java - 保留大写/小写字符和空格的正则表达式?

标签 java regex string whitespace replaceall

我需要解析一些文本,我在replaceAll() 方法中使用正则表达式来执行此操作。这是我使用它的行:

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

这几乎是完美的,它从字符串中删除了数字,但是它也删除了空格,我需要保留空格吗?我该如何修改它才能做到这一点?

例如,“Local Police 101”将变为“Local Police”。

最佳答案

你已经很接近了!您只需在“不”列表中添加一个空格,最终会得到 "[^A-Za-z ]";

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

注意正则表达式中小写“z”后面的空格。

编辑: 查看您的示例,您还想删除字符串开头和结尾处的剩余空格。为此,您还需要修剪replaceAll 的结果。为此,只需在replaceAll() 之后添加.trim() 即可。你最终会得到这样的结果:

String parsedValue = selectedValue.replaceAll("[^A-Za-z ]", "").trim();

关于java - 保留大写/小写字符和空格的正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50312032/

相关文章:

java - 如何从 firebase 检索数据并输入到 csv

java - 如何从 Volley onResponse 返回解析后的数据?

java - 尝试在 jsp 中打印 session 变量会导致错误 "equals expected"

java - 可以将一个属性值分配给其他属性文件中的另一个属性吗

java - 在 Java 中使用正则表达式进行验证

javascript - 解析数组并将值转换为对象

javascript - 带有 "="字符的正则表达式

c++ - 如何遍历字符串中的单词?

c - C 中带有空格的字符串被截断

java - Java StringTokenizer.countTokens() 的时间复杂度是多少