使用
java.text.Normalizer来处理这个给你。
string = Normalizer.normalize(string, Normalizer.Form.NFD);// or Normalizer.Form.NFKD for a more "compatable" deconstruction
这会将所有重音符号与字符分开。然后,你只需要比较每个字符和一个字母,然后扔掉那些不是字母。
string = string.replaceAll("[^\p{ASCII}]", "");如果你的文本使用
unipre,则应改用以下代码:
string = string.replaceAll("\p{M}", "");对于
unipre,
\P{M}匹配基本字形,\p{M}(小写)匹配每个重音。


