将Java字符串转换为ascii

gre*_*rem 21 java ascii

我需要将String包含某些特定于某些语言的字母(如HÄSTDJUR - noteÄ)的s 转换为String没有这些特殊字母(在本例中为HASTDJUR)的字母.我怎么能用Java做呢?感谢帮助!


这听起来并不是真的.方案如下 - 您想要使用该应用程序,但没有瑞典语键盘.因此,您不必查看字符映射,而是使用拉丁字母表中的典型字母替换特殊字母.

Sea*_*oyd 52

我认为你的问题与这个问题相同:

Java - 摆脱重音并将它们转换为普通字母

因此答案也是一样的:

String convertedString = 
       Normalizer
           .normalize(input, Normalizer.Form.NFD)
           .replaceAll("[^\\p{ASCII}]", "");
Run Code Online (Sandbox Code Playgroud)

参考

看到

示例代码:

final String input = "T?ï? ?š â f???? Š?????";
System.out.println(
    Normalizer
        .normalize(input, Normalizer.Form.NFD)
        .replaceAll("[^\\p{ASCII}]", "")
);
Run Code Online (Sandbox Code Playgroud)

输出:

这是一个时髦的字符串