如何替换所有非字母字符并保留空格?

时间:2020-03-23 13:06:50

标签: java

我正在尝试替换字符串中不是字母的所有字符,但要保留单词之间的空格。

我到目前为止的代码:

String newWords = words.replaceAll("[^A-Za-z0-9 ]", "");

我也尝试过这个:

[^a-zA-Z0-9\\s]

该代码的问题在于,它除去了字符串中的数字以外的所有内容。

1 个答案:

答案 0 :(得分:0)

它将删除87.97之间的点,但不会删除数字本身

[^...]的意思是every character except。因此[^A-Za-z0-9 ]的意思是:匹配(并替换/删除)除 之外的所有内容。A-Z a-z 0-9space。换句话说,这些字符受保护禁止删除。

如果您还想删除数字(数字系列),请从正则表达式中删除0-9

String newWords = words.replaceAll("[^A-Za-z ]", "");