我需要创建一个将匹配所有Unicode数字和字母字符的Pattern
。到目前为止,我有"\\p{IsAlphabetic}|[0-9]"
。Unicode数字的字符类
第一部分对我来说很好,它很好地将非拉丁字符识别为字母字符。问题在于下半场。显然它只适用于阿拉伯数字。字符类别\\d
和\p{Digit}
也只是[0-9]
。对于Pattern
的javadoc似乎没有提到Unicode数字的字符类。有没有人有这个问题的良好解决方案?
为了我的目的,我会接受一种方法来匹配Character.isDigit
返回true
的所有字符集。
'unicode digit'实际上是一个明确定义的概念吗? – us2012 2013-02-18 22:08:07
在某种程度上,我会说是的。 Character类有一个isDigit方法,它对非拉丁数字返回true(我用日文数字测试过)。 – Aurand 2013-02-18 22:10:02
如果使用Pattern.UNICODE_CHARACTER_CLASS会发生什么情况,如'Pattern p = Pattern.compile(“(?= \\ w +”,Pattern.UNICODE_CHARACTER_CLASS)'' – 2013-02-18 22:10:48