【发布时间】:2015-05-20 13:52:12
【问题描述】:
我正在寻找一种方法来检测 java 字符串中的字符是否“是组合字符”。例如,
String khmerCombiningVowel =
new String(new byte[]{(byte) 0xe1,(byte) 0x9f,(byte) 0x80}, "UTF-8"); // unicode 17c0
代表combining Khmer vowel sign。我试过"\\p{InCombiningDiacriticalMarks}"regex,但它似乎不适用于这些特殊的组合字符。或者即使有所有 unicode 组合字符块的完整列表,我也可以为它们制作一个正则表达式?
【问题讨论】:
-
这里是组合变音符号块中所有 Unicode 字符的链接:fileformat.info/info/unicode/block/combining_diacritical_marks/…
-
是的,奇怪的是,这个字符似乎是一个组合标记,但 在“组合变音符号”块之外。这就像......也许是其他一些街区?
标签: java regex unicode combining-marks