我正在从这里听到正确答案: Remove diacritical marks (ń ǹ ň ñ ṅ ņ ṇ ṋ ṉ ̈ ɲ ƞ ᶇ ɳ ȵ) from Unicode chars 正如你所料,正常化一些字符串。
它可以很好地对抗本地单元测试,但是当我尝试在模拟器上使用它时,我得到:
Caused by: java.util.regex.PatternSyntaxException: U_ILLEGAL_ARGUMENT_ERROR
[\p{InCombiningDiacriticalMarks}\p{IsLm}\p{IsSk}]+
at java.util.regex.Pattern.compileImpl(Native Method)
at java.util.regex.Pattern.compile(Pattern.java:1340)
at java.util.regex.Pattern.<init>(Pattern.java:1324)
at java.util.regex.Pattern.compile(Pattern.java:946)
at com.listonic.util.TextNormalizationUtilsKt.<clinit>(TextNormalizationUtils.kt:37)
... 7 more
任何想法有什么不对?