Удалить не-ASCII непечатаемые символы из строки
Я получаю пользовательский ввод, включая символы не ASCII и непечатные символы, такие как
\xc2d
\xa0
\xe7
\xc3\ufffdd
\xc3\ufffdd
\xc2\xa0
\xc3\xa7
\xa0\xa0
например:
email : [email protected]\xa0\xa0
street : 123 Main St.\xc2\xa0
желаемый результат:
email : [email protected]
street : 123 Main St.
Каков наилучший способ их удаления с помощью Java?
Я попробовал следующее, но, похоже, не работает
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}", ""));
}
Выход
abc@gmail\xe9.com
[email protected]\xa0\xa0