我需要使用以下规则验证电话号码
- 必须以以下 ISD 代码 +352、+91、+33、+49、+32 开头(字符串必须以 + 开头(
- ISD代码后面必须只有0-9的数字(不能有空格,符号或字符(
- 必须最少 8 个字符,最多 15 个字符
我很难构建正确的正则表达式,到目前为止我只有preg_match('/^+d+$/', $value)
,这绝对不起作用。感谢这里的任何帮助。
谢谢。
必须至少为 8 个字符,最多 15 个字符
我假设这是总数。
模式:
^+(?=d{8,15}$)(?:32|33|49|91|352)d+$
^ // start of line
+ // a plus
(?=d{8,15}$) // look ahead and assert 8 to 15 digits must match
(?: // grouped alternation (uncaptured)
32|33|49|91|352 // alternations
) // end of group
d+ // 1 or more digits
$ // end of line
- 旗帜: g, m
- 步数:30
演示
您可以使用正则表达式来完成
^+(?:(?:91)|(?:49)|(?:3(?:52)|3|2))d{8,15}
您的正则表达式应如下所示:
^+(352|91|33|49|32)(d{8,15})$
此页面 https://regex101.com/对于验证和描述正则表达式非常有帮助。