正则表达式美国电话号码验证

时间:2015-02-09 08:18:53

标签: javascript jquery regex validation

我发现这个javascript正则表达式可以验证可以写入美国电话号码的不同格式。但它有问题:它无法匹配该组中的第二条规则:

  

第一组三位数,称为区号以数字开头   2-9,然后是0-8,然后是任何第三位。

它接受9而它应该只接受来自(0-8)的数字。这个正则表达式显示了所有内容:http://regexr.com/3ackc

/^(1[- .]?)?(\([2-9]\d{2}\)[. -]?|[2-9]\d{2}[. -]?)[2-9]\d{2}[- .]?\d{4}$/gm

1 个答案:

答案 0 :(得分:0)

我不完全了解美国电话号码的符号和确切限制,所以我提到了Wikipedia并想出了这个:

/^[2-9][0-8]\d\-?[2-9]([02-9]{2}|[02-9]\d||\d[02-9])\-?\d{4}$/g

Matches in Regexhelper