1

java - 如何使用java正则表达式替换3个或更多字母与双打一起出现?像 oooooops with oops 和 yesssssss with yess

4

3 回答 3

6
string.replaceAll("(\\w)\\1{2,}", "$1$1")
于 2012-07-13T11:29:54.130 回答
1

就像所有其他语言一样......

要匹配三个或更多,您可以使用/.{3,}/. 要捕获相同的字符,请使用反向引用/(.)\1{2,}/,您可以轻松地将其替换为 2 次出现的捕获组。要仅捕获字母,您可以使用非空白字符\S

str.replace("(\\S)\\1{2,}", "$1$1");
于 2012-07-13T11:28:53.850 回答
0

这是根据您的要求工作:

正则表达式示例

于 2012-07-13T11:37:19.037 回答