Javascript Regular Expression限制用户在文本字段中输入相同的连续数字

时间:2011-07-11 10:14:34

标签: javascript html regex

我想限制用户在文本字段中输入相同的连续数字,例如用户不能输入像John22或22John或jo22hn那样的字符串....他可以输入像Joh2n2,2Joh2n等字符串...等等这必须在Javascript中完成(使用正则表达式将是一个更好的选择)...请帮助

3 个答案:

答案 0 :(得分:3)

测试连续数字的字符串:

/(\d)\1/.test(string)

答案 1 :(得分:1)

您可以使用否定前瞻来完成此操作。

^(?!.*(\d)\1).*$

here at Regexr

^$在字符串的开头和结尾处锚定匹配。

.*将匹配所有内容(换行符除外)

这里的重要部分是否定前瞻(?!.*(\d)\1)它将检查整个字符串中的数字\d是否因为方括号(\d)而将其放入捕获组中并使用值重用反向引用\1并且整个事情都失败了,有一个数字后跟相同的数字。

答案 2 :(得分:0)

以下正则表达式应该有所帮助:

/[0-9]{2,}/

或者

/[\d]{2,}/

虽然,您可以使用/ g标志匹配所有实例:

/[0-9]{2,}/g

this JSFiddle

上查看