Java字符串replaceAll正则表达式

标签 java regex replace

嗨,我想从长字符串中删除某些单词,问题是有些单词以“s”结尾,有些单词以大写开头,基本上我想转:

“你好猫猫猫狗狗狗狐狸狐狸狐狸”

进入:

“你好”

目前我有这段代码,但我想对其进行改进,提前致谢:

                    .replace("foxs", "")
                    .replace("Fox", "")
                    .replace("Dogs", "")
                    .replace("Cats", "")
                    .replace("dog", "")
                    .replace("cat", "")

最佳答案

试试这个:

String input = "Hello cat Cats cats Dog dogs dog fox foxs Foxs";
input = input.replaceAll("(?i)\\s*(?:fox|dog|cat)s?", "");

Demo

关于Java字符串replaceAll正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49033398/

相关文章:

java - 用Java替换文件中的文本

java - java中泛型方法的区别

regex - Perl 正则表达式捕获行首和行尾之间的字符串(行尾有一个带字符的空格)

java - Jersey Response.seeOther() 未给出 HTTP 303 状态代码

c# - OR 正则表达式中的表达式?

python - 使用正则表达式功能突出显示多个单词

R 循环用于用行模式替换 NA

Jquery 将\n 替换为 <br/>?

javascript - 什么是 WOPI 操作 URL?

java - base 64 编码的有效字符范围