繁体   English   中英

电话号码格式(不超过10位数字)的RegEx表达式,不接受0或1作为第一个数字

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM