如何在Java中将重音字母转换为常规字符

时间:2009-12-26 17:50:52

标签: java char

如何将Æá转换为带有Java的常规英文字符?我所拥有的是这样的:来自Paran的本地电视á。如何将其转换为[巴拉那]?

2 个答案:

答案 0 :(得分:6)

查看icu4j或JDK 1.6 Normalizer:

public String removeAccents(String text) {
    return NNormalizer.normalize(text, Normalizer.Form.NFD)
                     .replaceAll("\\p{InCombiningDiacriticalMarks}+", "");
}

答案 1 :(得分:0)

据我所知,没有办法自动执行此操作 - 您必须使用String.replaceAll手动替换。

String str = "Paraná";
str = str.replaceAll("á", "a");
str = str.replaceAll("Æ", "a");