相关疑难解决方法(0)

正则表达式以匹配标准的10位数电话号码

我想为支持以下格式的标准美国型电话号码编写正则表达式:

###-###-####
(###) ###-####
### ### ####
###.###.####
Run Code Online (Sandbox Code Playgroud)

其中#表示任何数字.到目前为止,我想出了以下表达式

^[1-9]\d{2}-\d{3}-\d{4}
^\(\d{3}\)\s\d{3}-\d{4}
^[1-9]\d{2}\s\d{3}\s\d{4}
^[1-9]\d{2}\.\d{3}\.\d{4}
Run Code Online (Sandbox Code Playgroud)

分别.我不太确定最后一个是否适用于虚线检查.我也想知道是否有任何方法可以编写单个表达式而不是4个不同的表达式,以满足我提到的不同格式.如果是这样,我不知道该怎么做.还有我如何修改表达式/表达式,以便我还可以包含一个条件来支持区域代码作为可选组件.就像是

+1 ### ### ####
Run Code Online (Sandbox Code Playgroud)

其中+1是区号,它是可选的.

regex pattern-matching

104
推荐指数
10
解决办法
31万
查看次数

标签 统计

pattern-matching ×1

regex ×1