以下将替换ASCII控制字符(简写为[\x00-\x1F\x7F]):
my_string.replaceAll("\\p{Cntrl}", "?");
Run Code Online (Sandbox Code Playgroud)
以下内容将替换所有ASCII不可打印字符(简写[\p{Graph}\x20]),包括重音字符:
my_string.replaceAll("[^\\p{Print}]", "?");
Run Code Online (Sandbox Code Playgroud)
但是,它们都不适用于Unicode字符串.有没有人有一个很好的方法从unicode字符串中删除不可打印的字符?