带有特殊字符的电话号码的正则表达式[重复]

问题描述 投票:-3回答:1

这个问题在这里已有答案:

我需要一个正则表达式的电话号码。电话号码可能包含+, ., /, -, space, (, ), [, ]等特殊字符。

一些例子:

(+91) 9864081806
(+91)9864081806
(+91)(98640)81806
+91.98640.81806
[+91]09864081806
+91.986.408.1806
+91-986-408-1806
Maximum numbers = 15

特殊字符可以存在于代码中的任何位置。开口支架应该是关闭的。

我已创建此模式但它不起作用:

preg_match('/^[\[\(\0-9\s.\_\-\+\/\)\]]{3,15}$/', $phone_no)
php regex regular-language
1个回答
0
投票

试试这个:

^(?=(?:[^\d\n]*\d){1,15}[])]?$)(?:[+]?\d++|[(][+]?\d++[)]|[[][+]?\d++[]])(?:[ .-]?+(?:\d\d++|[(]\d\d++[)]|[[]\d\d++[]]))*+$

你有一个演示here

© www.soinside.com 2019 - 2024. All rights reserved.