可能重复:用于电话号码验证的全面正则表达式使用JavaScript验证电话号码
我正在尝试写一个正则表达式来验证美国电话号码的格式(123)123-1234 - 真123-123-1234 - 是的
其他一切都无效 .
我想出了类似的东西
^\(?([0-9]{3}\)?[-]([0-9]{3})[-]([0-9]{4})$
但这证实了,123)-123-1234(123-123-1234
这是不对的 .
匹配两者的最简单方法
^\([0-9]{3}\)[0-9]{3}-[0-9]{4}$
和
^[0-9]{3}-[0-9]{3}-[0-9]{4}$
是使用交替( (...|...) ):将它们指定为两个主要分开的选项:
(...|...)
^(\([0-9]{3}\)|[0-9]{3}-)[0-9]{3}-[0-9]{4}$
顺便说一句,当美国人把区号放在括号中时,我们实际上在那之后放了一个空格;例如,我写的是 (123) 123-1234 ,而不是 (123)123-1234 . 所以你可能想写:
(123) 123-1234
(123)123-1234
^(\([0-9]{3}\) |[0-9]{3}-)[0-9]{3}-[0-9]{4}$
(尽管最好明确说明您希望电话号码所在的格式 . )
1 回答
匹配两者的最简单方法
和
是使用交替(
(...|...)
):将它们指定为两个主要分开的选项:顺便说一句,当美国人把区号放在括号中时,我们实际上在那之后放了一个空格;例如,我写的是
(123) 123-1234
,而不是(123)123-1234
. 所以你可能想写:(尽管最好明确说明您希望电话号码所在的格式 . )