如题, 怎么判断一个字符是否为全角还是半角? 多谢您的回复!
1
fy 2016-12-11 09:29:12 +08:00 via Android
ord 一下 看是不是在 255 以下?
|
2
veelog 2016-12-11 09:37:29 +08:00 via Android
判断字符宽度
|
3
Khlieb 2016-12-11 09:45:58 +08:00 via Android
按编码
|
4
crab 2016-12-11 10:04:21 +08:00
ASCII 大于 128
|
5
staticor 2016-12-12 11:19:30 +08:00
参考 http://stackoverflow.com/questions/10959227/how-to-distinguish-whether-a-word-is-half-width-or-full-width
半角字符使用 ord 返回对应的值, 全角字符使用 ord 会报异常. 也可以使用 unicode 值判断 |
6
vtoexsir OP 转为 gb18030 编码,然后查看长度,等于 2 的就是全角,等于 1 的就是半角,这也是全角半角的本意吧
|
7
type 2016-12-13 17:25:53 +08:00
使用 len() 方法,返回字符长度,长度为 1 的是半角,长度为 2 为全角。
不知这样是否可行? |
8
m3ng9i 2020-07-03 23:20:51 +08:00 1
import unicodedata
unicodedata.east_asian_width('我') # W (宽) unicodedata.east_asian_width('i') # Na (窄) |