![](/img/trans.png)
[英]Regex to use in JavaScript string with not more than n number of digits
[英]RegEx expression in phone number format (no more than 10 digits) that does not accept 0 or 1 as first number
我想要一个正则表达式,它是电话号码格式(XXX)XXX-XXXX ..不能超过10位数字,并且不接受0或1作为第一个数字。
现在我有-
/^(?!\(?[0-9]11\)?|\(?1[0-9][0-9]\)?|\(?0[0-9][0-9]?)(\(?\d{3}\)?\s?)(\(?\d{3})(\s?-?\s?)(\d{4})$/;
但这行不通。
任何帮助,将不胜感激。
您可以使用表达式:
^\([2-9][0-9]{2}\)[0-9]{3}-[0-9]{4}$
^
行首的位置。 \\(
开括号(
。 [2-9]
2到9之间的第一位数字。 [0-9]{2}
两位数字。 \\)
一个右括号)
。 [0-9]{3}
三位数字。 -
连字符。 [0-9]{4}
四位数。 $
行尾位置。 您可以在这里进行测试。
我们将匹配3个不以0或1开头的数字,并用\\([2-9]\\d{2}\\)
括起来,然后将3个数字与\\d{3}
单独匹配,然后将4个数字与-\\d{4}
。
您的完整表达式是/\\([2-9]\\d{2}\\)\\d{3}-\\d{4}/
const regex = /\\([2-9]\\d{2}\\)\\d{3}-\\d{4}/; const valid = '(211)222-3333'; const invalid = '(111)222-3333'; console.log(regex.test(valid)); console.log(regex.test(invalid));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.