测试具有3个连续连续字符的单词的字符串

时间:2018-12-07 21:31:16

标签: javascript regex

我正在尝试获得一个正则表达式,当给定的字符串中至少包含一个由3个或更多重复的连续字符组成且没有其他字符的单词时,将满足该表达式:

Testing AAAAAA Test-有效

Testing AAAAAAB Test-无效

我以前达到的解决方案还不足以识别单词中是否存在不同的字符:

/^(?:(.)(?!\1{2}))+$/gi

这实际上只是测试每个字符后的两个字符是否相等。

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

怎么样

\b(.)\1{2,}\b

\b    word boundary
(.)   something
\1    previous thing...
{2,}  ...twice or more
\b    word boundary

https://regex101.com/r/BKHkOc/3

答案 1 :(得分:1)

添加单词边界。并使用{2,}匹配至少 2个重复。

/\b(.)\1{2,}\b/

由于您不匹配字母,所以不需要i,因此大小写无关紧要。并且仅在测试时不需要g;只有在您返回所有匹配项或进行替换时,此选项才有用。