正则表达式确定印度手机号码

时间:2015-07-23 16:41:43

标签: php regex

请帮我改进我的正则表达式来检测印度手机号码。它不匹配所有模式:

+91-9883443344
0091-9883443344
+91 -9883443344
+91- 9883443344
+91 -9883443344
0091 - 9883443344

$pattern = "/((([\+?\(91\)\s?]|\-|0|((00|\+)?91))-?)?[7-9]\d{9,11})/s";

2 个答案:

答案 0 :(得分:4)

您可以使用此正则表达式:

^(?:\+|00)91\h*-\h*\d{10}$

这适用于所有示例。这将匹配开头后的+00,后跟连字符,连字符后面的可选空格后跟10位数字。

RegEx Demo

答案 1 :(得分:0)

最后我进入了这个正则表达式: 我测试过的是: 9822010143 +919454333035 + 91-9883443344 0091-9883443344 +91 -9883443344 + 91- 9883443344 +91 -9883443344 0091 - 9883443344 8892222223

$pattern = "((\+?\(?[0]{0,2}?(91|86)?\)?\s?-?\s?[7-9]\d{9,11}))";

$ comment = preg_replace($ pattern,'

致电我们

',$ comment); 的var_dump($评论);

相关问题