java - 在字符串正则表达式 C/W 中查找重复的单词

标签 java regex string duplicates words

我目前正在研究 Java 中的正则表达式,并想尝试在字符串中查找重复的单词。如果我输入一个字符串,例如“This this is great.”。我使用的是 \\b(\\w+)\\1\\b,但它只能识别两个重复的单词,例如字符串中的“this this”。

对此有任何帮助吗?

最佳答案

将“忽略大小写”开关 (?i) 添加到您的正则表达式中:

(?i)\\b(\\w+) \\1\\b

或者,您可以先将输入折叠为小写:

input.toLowerCase()

注意:如果您正在使用 String.matches(),则正则表达式必须匹配整个 输入,因此您需要添加 .* 到正则表达式的两端:

.*(?i)\\b(\\w+) \\1\\b.*

关于java - 在字符串正则表达式 C/W 中查找重复的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15627624/

相关文章:

java - 如何修复 Oracle SQL Developer 上的 "no ocijdbc12 in java.libary.path"?

java - 如何在不同的 Activity 中维护变量而不使用共享的首选项

java - 如何从字符串中提取图像url?

regex - 是否可以让正则表达式替换非贪婪?

android - 动态获取应用程序的可用语言

java - 使用 SimpleDateFormat.parse() 时获取错误数据

java - Hadoop Yarn 写入本地文件系统

c# - StringBuilder 中的正则表达式替换

java - 检查字符串中是否有整数?

javascript - 为什么 String 的行为像 Array ? - JS