且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

从拉丁字符中删除重音符号(变音符号)以进行比较

更新时间:2023-02-26 09:49:50

您可以使用 java.text.Normalizer 小正则表达式摆脱变音标记

public static String removeDiacriticalMarks(String string) {
    return Normalizer.normalize(string, Form.NFD)
        .replaceAll("\\p{InCombiningDiacriticalMarks}+", "");
}

用法示例:

String text = "mšk žilina";
String normalized = removeDiacriticalMarks(text);
System.out.println(normalized); // msk zilina