什么unicode范围被认为是字母?

时间:2015-09-03 12:35:10

标签: unicode

我正在尝试进行一些文字处理。我可以轻松地为我所知的语言编写一个正则表达式(英语为A-Z),但添加希伯来语,阿拉伯语,中文等字母的内容太多了。

unicode认为字母是什么字符范围?

2 个答案:

答案 0 :(得分:3)

除了按其范围进行分类之外,每个Unicode字符都有一个称为“常规类别”的东西。您可能想要使用以下类别:

[Lu]    Letter, Uppercase
[Ll]    Letter, Lowercase
[Lt]    Letter, Titlecase
[Lm]    Letter, Modifier
[Lo]    Letter, Other

这不包括数字,标点符号,符号等(它与Java的Character.isLetter使用的设置相同)。如果您的正则表达式引擎支持它,您可以使用\p{L}检查输入字符是否在其中一个类别中。

整个类别列表位于Wikipediaunicode.org包含有关\p正则表达式语法的详细信息。

答案 1 :(得分:2)

您可能需要查看以下内容:Unicode Character Ranges,其中包含语言的范围。具体来说没有一般的范围,因阿拉伯语的不同语言而异,它是0600 - 06FF,希伯​​来语是0590 - 05FF等。