我希望它匹配:
aaaaaa
bb
c
但不是:
aaabaaa
cd
...
答案 0 :(得分:21)
假设正则表达式引擎支持反向引用,
^(.)\1*$
在Java中它将是
theString.matches("(.)\\1*")
答案 1 :(得分:8)
使用反向引用:
(.)(\1)*
读取:匹配任何字符后跟同一个字符0次或更多次。
根据正则表达式引擎和您的需要,您可能希望将正则表达式锚定为仅匹配整个字符串,而不是匹配子字符串。
答案 2 :(得分:0)
如果您想捕捉匹配的内容,则为^((.)\2*)$
答案 3 :(得分:0)
只是为了解决这个问题,你可以使用BackRefence:
(\ W +)\ S + \ 1
它检查由空格分隔的重复单词。