0

最近我一直在处理混合语言的文本,包括中文、英文,甚至一些表情符号。

我一直在寻找这个问题很多,但我唯一能找到的是“用半角字符替换全角字符”而不是告诉你如何确定字符是半角还是全角 -宽词。

所以,我的问题是:

是否可以判断一个单词是半角还是全角?

4

3 回答 3

2

在 unicode 6.1 中,这里有 block Halfwidth and Fullwidth forms, pdf

在这个块内,\uFF01-\uFF60\uFFE0-\uFFE6是全角的,而\uFF61-\uFFDC\uFFE8-\uFFEE是半角的。

于 2012-06-09T07:35:24.687 回答
1

我认为这是一个很难回答的问题,除非您对什么是半角字符和什么是全角字符有明确的标准。如果您可以决定,那么您可以根据 Unicode(或任何编码方案)中的某些范围测试单词中的字符。

Unicode 块半角和全角形式仅向您显示哪些字符具有替代形式。对于此块中没有的任何内容,您必须决定您认为什么是半角和全角。

我想大多数西方字符是半角,大多数东方字符是全角,但两者都会有例外。正如这份 Unicode 报告强调的那样,也存在歧义。

该提议包括似乎将字符分为全半角和模棱两可的代码。您可以使用这些代码点作为起点。

于 2012-06-09T08:34:46.140 回答
0

如果一个单词的字符是全角的,那么它就是全角的。您需要查找 unicode 规范并查看哪些字符范围是全角的,然后检查每个字符。

于 2012-06-09T07:36:14.710 回答