我需要創建一個將匹配所有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