我试图替换字符串中所有不是字母的字符,但保留单词之间的空格。
到目前为止我拥有的代码:
String newWords = words.replaceAll("[^A-Za-z0-9 ]", "");
我也试过这个:
[^a-zA-Z0-9\s]
代码的问题在于,它删除了字符串中除了数字之外的所有内容。
它删除87.97之间的点,但不会删除数字本身
[^...]
表示除之外的所有字符。所以[^A-Za-z0-9 ]
的意思是:匹配(并替换/删除(除了A-Z
a-z
0-9
和space
之外的所有。换句话说,这些字符受到保护不被删除。
如果您还想删除数字(数字序列(,请从正则表达式中删除0-9
。
String newWords = words.replaceAll("[^A-Za-z ]", "");