Usuń z łańcucha ciąg znaków niedrukowalnych innych niż ASCII
Dostaję dane wejściowe użytkownika, w tym znaki spoza ASCII i znaki niedrukowalne, takie jak
\xc2d
\xa0
\xe7
\xc3\ufffdd
\xc3\ufffdd
\xc2\xa0
\xc3\xa7
\xa0\xa0
na przykład:
email : [email protected]\xa0\xa0
street : 123 Main St.\xc2\xa0
Pożądane wyjście:
email : [email protected]
street : 123 Main St.
Jaki jest najlepszy sposób na usunięcie ich za pomocą Java?
Próbowałem, ale nie działa
public static void main(String args[]) throws UnsupportedEncodingException {
String s = "abc@gmail\\xe9.com";
String email = "[email protected]\\xa0\\xa0";
System.out.println(s.replaceAll("\\P{Print}", ""));
System.out.println(email.replaceAll("\\P{Print}", ""));
}
Wydajność
abc@gmail\xe9.com
[email protected]\xa0\xa0