如何检查Unicode字符是否为全角?
我使用Win32 / MFC。
例如,中
是全角的,A
不是全角的,F
是全角的,F
不是全角的。
如何检查Unicode字符是否为全角?
我使用Win32 / MFC。
例如,中
是全角的,A
不是全角的,F
是全角的,F
不是全角的。
unicodedata.east_asian_width(unichr)
。
请参阅附录#11了解问题背景和更多信息。
“全宽”是什么意思?字符的宽度取决于其所显示的字体。
如果您指的是单字节字符,那还不够清楚。在哪种编码下是单字节字符呢?在UTF-8中,只有当代码点小于128时,它才是单字节字符;如果您使用UTF-16(可能是因为您正在使用Windows),只需将字符与128进行比较。在ISO 8859-1(另一种广泛使用的编码)中,单字节编码请与256进行比较。对于小于256的任何内容,UTF-16单元在ISO 8859-1中的代码点上数值上相同(有时也称为Latin-1)。对于单字节编码ASCII(几乎不再使用,但大多数常见编码的前128个代码点与之相同),小于128的任何内容都可以。