java - 只保留字母字符

标签 java regex string

在java中我应该遵循什么方法来产生

"WordWord"

来自

"Word#$#$% Word 1234"

最佳答案

您可以使用 String.replaceAll(regex, replacement)使用正则表达式 [^A-Za-z]+ 像这样:

String newstr = "Word#$#$% Word 1234".replaceAll("[^A-Za-z]+", "");
// newstr will become WordWord

编辑:虽然 OP 没有提到任何关于 unicode characters 的内容,但由于@Joey 发表了评论,并且如果有保留 unicode 字符的要求,那么 \\P{L}+ 正则表达式应该这样使用:

String newstr = "Word#$#$% Word λ1234ä, ñ, ж".replaceAll("\\P{L}+", "");
// newstr will become WordWordλäñж

关于java - 只保留字母字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9872002/

相关文章:

java - FireStore 日期查询未按预期工作

java - 有没有一种非异常的方式来访问 getDeclaredMethod?

java - 如何处理过大的 Spring Batch 步骤执行上下文?

Python正则表达式找到确切的单词

java 。比较字符串时忽略重音符号

java - 使用 Java 将 JSON 元素附加到文件中的 JSON 数组

javascript - 从两个不同的字符串中选择

regex - 赛德。如何删除与其周围的模式和字符串匹配的行?

python - 使用 Python Printf 将整数格式化为逗号

python - 在 Python 中如何将数字转换为混合列表中的 float