网站推广.NET

网站推广.NET

手机号码正则表达式

来源:互联网

 /**
    * 匹配手机号码
    * 1 3
    *       0123456789
    *   4
    *       57
    *   5
    *       0123456789
    *   7
    *   8
    **/
    $number = '13956789032';

    $pattern = '/1(3\d|4\[57]|5\d|7[01]|8\d)\d{8}/';

    if(preg_match($pattern ,$number ,$arr)){
    
        var_dump($arr);
    


回复讨论(解决方案)

so  ,你遇到什么问题了?

手机号11位数字,简单点的就是\d{11}
如果要更加严谨,那就判断手机号的前缀。

但你这个正则已经很好了,可以判断到 15X  13X  18X   其它的没有了什么好的建议了。

有没有更加完整的验证,说思路就行

手机号正则表达式