我想应用正则表达式模式来识别美国、英国和印度等国的所有移动电话号码和固定电话号码。目前,我正在使用以下模式
(?:+\s*\d{2}\s-)?(?:\d-\s){10}
不幸的是,它只是识别没有国家代码的10
数字。另外,如果有人知道识别固定电话号码的好指标,请告诉我。
发布于 2013-12-18 14:32:18
^(([^\.\-\,a-wy-z]([\(]?(\+|[x])?\d+[\)]?)?[\s\.\-\,]?([\(]?\d+[\)]?)?[\s\.\-\,]?(\d+[\s\.\-\,]?)+[^\.\-\,a-z])|((\+|[x])?\d+))$
这应该符合您正在寻找的大多数电话号码。
匹配
201-654-5932
201 654 5932
(201)-654-5932
201.654.5932
X201.654.5932
+1 201.654.5932
1.123.123.123
020 1234 5678
02-9323-1234
(02) 9323 1234
1-561-555-1212
12345-1234
(913) 451-6461
(+447222)555555
+44 7222 555 555
+91-98-44111112
+91-9844111112
+44(7222)555555
1(240) 652-5009
(0833)1234567-8888
+974-584-5656
+44 07222 555555
1.2123644567
1-(212)-123 4567
1212-364,4321
0-212364345
(658)154-1122
123131312312
875 (489 1568)
(+91)(240) 652-5009
非匹配
+()-
(+)-,.
493 -- 3227341
240/752-5009
(+91)(240)(876867) 652-5009
+974-5dadad32d84-5656
++44 07222 555555
0-234.567/8912
0212\345/6789
652-5009.
652-5009-
652-5009,
.652-5009
-652-5009
,652-5009
1-800-ALPHNUM
a-12-3
(658 154 1122
658 154 1122)
来源:id=2693
https://stackoverflow.com/questions/20660371
复制相似问题