提问者:小点点

如何查找3个或更多连续字符?


我正在进行密码检查。其中一个功能是查找输入的密码是否连续重复。我还没有代码,因为我不知道怎么做。

我发现这个正则表达式匹配两个或多个非连续的相同字符,但它只匹配重复的逗号。

以下是场景:

5236aaa121-重复模式,因为a连续重复3次

2312aa32aa-无重复字符

111111 ASD-重复模式,因为连续重复多次


共3个答案

匿名用户

使用反向引用:/(.)\1\1/

例子:

var hasTripple = /(.)\1\1/.test('xyzzzy');

JSFIDLE示例

匿名用户

下面这个怎么样?

(.)\1{2,}

匿名用户

试试这个正则表达式: (.) \1\1

/(.)\1\1+/g

点匹配任何字符,那么我们正在寻找不止一个在一排。我测试了它在http://regexpal.com/,我相信它做你想要的

您可以这样使用:

str.match(/(.)\1\1+/g).length

只需检查它是否为0

看到这在行动......http://jsfiddle.net/yentc/2/