【发布时间】:2019-09-10 08:42:49
【问题描述】:
我需要电话号码的正则表达式。电话号码可能包含特殊字符,例如+, ., /, -, 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)
【问题讨论】:
-
你需要定义你的一般匹配规则,因为现在太模糊了。例如:此电话号码是否有效
+91 12344 123 [[123]]?至于您当前的规则它可能是有效的,但是您可能不想允许这样的事情......请定义所有有效的规则。为每条规则添加额外的示例。 -
(+91) 9864081806 (+91)9864081806 (+91)(98640)81806 +91.98640.81806 [+91]09864081806 +91.986.408.1806 +91-986-408-1806 最大值15
-
嗨,我添加了一些我需要的规则示例
标签: php regex regular-language