英国手机验证

时间:2013-01-24 13:00:09

标签: php regex validation

我正在尝试验证英国移动电话号码,格式为:

075xxxxxxxx 077xxxxxxxx 078xxxxxxxx079xxxxxxxx

每个号码必须以上述3个数字开头,长度为11位。

我环顾四周,找到了几个正则表达式,例如:

RegEx1 RegEx2

但是我没有努力满足我的确切需求。

有没有人有一个例子可以解决我想要验证的数字?

3 个答案:

答案 0 :(得分:8)

使用此正则表达式07[5789]\d{8}

如果你想像这一个07[5789]\d{3}-\d{3}-\d{2}

那样设置破折号正确的正则表达式

答案 1 :(得分:3)

07[57-9]\d{8}

  1. 07 - >完全匹配
  2. [57-9] - >匹配5,7,8和9
  3. \d{8} - > 8位数

答案 2 :(得分:1)

试试这个:

<?php

$telno = "07712345678";

preg_match("^07[5789]{1}[0-9]{8}^",$telno,$matches);

if(count($matches) > 0 && $matches[0] == $telno){
    echo "valid tel no.";
}else{
    echo "invalid no.";
}

?>