Possible Duplicate:
A comprehensive regex for phone number validation




我非常接近需要的完整正则表达式。但是我似乎无法获得允许的可选空白。

正则表达式

^(\(?\d{3}\)?\-?\d{3}\-?\d{4})$


要求-仅这四个

111-111-1111-工程

(111)111-1111-作品

(111)111-111-无法捕获

1111111111-工程

如何在括号后面添加可选空格?

最佳答案

匹配\(?\b[0-9]{3}\)?[-. ]?[0-9]{3}[-. ]?[0-9]{4}\b3334445555333.444.5555333-444-5555333 444 5555及其所有组合的(333) 444 5555怎么样。

更新

您遇到了REGEX的局限性,因此丑陋的解决方案实际上是:

(\d{3}-\d{3}-\d{4}|\(\d{3}\)\s?\d{3}-\d{4}|\d{10})


Example

09-30 19:16