如何在正则表达式中查找短划线以搜索电话号码



我有一个Regex,它可以帮助我在文本中找到电话号码:

+?(972|0)(-)?0?(([23489]{1}d{7})|[5]{1}d{8})

我想找一个带破折号的电话号码,这个Regex不能用破折号。

我试图修改正则表达式以使用dases查找电话号码,但没有成功。

如何将破折号添加到Regex?

(1[s-]?)?(?(d{3})?[-s]?d{3}[-s]?d{4}

此正则表达式将匹配所有这些(以及任何破折号和空格的变体,但始终使用3-3-4(US)格式):

1 (123) 456 7890
1234567890
123 456 7890
123-456-7890
1-123-456-7890
1-(213)-456-7890

下面的正则表达式更面向国际:

((+|00)d+)?[s-]?((d))?[d-s]+

它将匹配这些:

+31612345678
+31 (0)6 1234 5678
0031 (0)30 12345678
+313012345678
030-1234567
0612345678
070 1234567

但也包括:

123456789123456789123456789

我希望这能帮助您进一步解决

问题

最新更新