Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用于电话的正则表达式,但如果所有10位数字都相同,则要使其无效_Javascript_Regex_Angularjs - Fatal编程技术网

Javascript 用于电话的正则表达式,但如果所有10位数字都相同,则要使其无效

Javascript 用于电话的正则表达式,但如果所有10位数字都相同,则要使其无效,javascript,regex,angularjs,Javascript,Regex,Angularjs,我正在尝试使用数据ng模式验证电话字段。如果有10位数字,则验证其所有数字 您可以预先添加表单的模式: (?!this isn't valid) 把它放在开头的^后面,放在其他任何内容之前。如果找到了,那么它就失败了。您的案例的一个例子可能是: (?!\((\d)\1\1\) \1{3}-\1{4}) 如果输入包含所有相同的数字,则应拒绝输入 ^(?!\((.)\1\1\)\s*\1\1\1-\1\1\1\1)\([0-9]{3}\) [0-9]{3}-[0-9]{4}$ 试试这个。请看

我正在尝试使用数据ng模式验证电话字段。如果有10位数字,则验证其所有数字


您可以预先添加表单的模式:

(?!this isn't valid)
把它放在开头的
^
后面,放在其他任何内容之前。如果找到了,那么它就失败了。您的案例的一个例子可能是:

(?!\((\d)\1\1\) \1{3}-\1{4})
如果输入包含所有相同的数字,则应拒绝输入

^(?!\((.)\1\1\)\s*\1\1\1-\1\1\1\1)\([0-9]{3}\) [0-9]{3}-[0-9]{4}$
试试这个。请看演示。只需添加一个前瞻来检查所有数字是否不相同。请看演示


您可以对该问题使用“展望”

/^\(([0-9])(?!\1{2}\) \1{3}-\1{4})[0-9]{2}\) [0-9]{3}-[0-9]{4}$/
基本上,您捕获的是第一个数字,然后检查以下所有数字是否匹配,
([0-9])
捕获第一个数字,
(?!\1{2}\)\1{3}-\1{4})[0-9]{2}\
是一种消极的前瞻

基本上是一种检查字符串中所有内容的方法,而无需在主模式中前进


检查剩余的数字是否相同,然后不匹配

使电话号码无效的因素比“所有相同的数字”多。@NiettheDarkAbsol基本上我想使用我当前的正则表达式,但除此之外,使所有相同的10个数字无效。