首页 > JavaScript > 手机号验证正则表达式
2009六月24

手机号验证正则表达式

昨天找了好久,终于在一个站上把这个手机号验证的正则表达式给扒下来了,

手机号验证的正则为:

var reg =/^0{0,1}(13[0-9]|15[7-9]|153|156|18[7-9])[0-9]{8}$/;

var reg =/^0{0,1}(13[0-9]|15[0-9])[0-9]{8}$/;

移动手机号的验证正则为:

var reg =/^0{0,1}(13[4-9]|15[7-9]|15[0-2]|18[7-8])[0-9]{8}$/;

2009.11.23 新增加移动151,152号段,但是没有在源码演示中放出,下面代码已经更新

这可是包括15x话段的哈。嗯。。

手机号的那个,各位大爷可以用第一个,也可以用第二个,您随意吧,我不知道手机号现在都有15几了,就都弄上了。。

    <input type="text" id="mobile" name="mobile" onblur="if (value=='') {value='请输入您的手机号'}" onfocus="if(value=='请输入您的手机号') {value=''}" value="请输入您的手机号"/>
   
    <input type="button" name="china_mobile" value="校验是否是移动手机号" onclick="CheckChinaMobileID(document.getElementById('mobile').value)"/>
   
    <input type="button" name="is_mobile" value="校验是否是手机号" onclick="CheckIsMobile(document.getElementById('mobile').value)"/>
    function CheckChinaMobileID(mobile){
       
        if (mobile==""){
            alert("请填写手机号码!");
            return false;
        }
        if(isNaN(mobile)||(mobile.length!=11)){
            alert("手机号码为11位数字!请正确填写!");
            return false;
        }
        var reg =/^0{0,1}(13[4-9]|15[7-9]|15[0-2]|18[7-8])[0-9]{8}$/;
        if(!reg.test(mobile))
        {
            alert("您的手机号码不是移动号码,请重新输入");
           
            return false;
        }
        alert("大爷,这个真是移动的手机号");
        return true;
    }
    function CheckIsMobile(mobile){
       
        if (mobile==""){
            alert("请填写手机号码!");
            return false;
        }
        if(isNaN(mobile)||(mobile.length!=11)){
            alert("手机号码为11位数字!请正确填写!");
            return false;
        }
       
        var reg =/^0{0,1}(13[0-9]|15[0-9])[0-9]{8}$/;
        if(!reg.test(mobile))
        {
            alert("您的手机号码不正确,请重新输入");
           
            return false;
        }
        alert("大爷,这个真是手机号,是哪的我不知道");
        return true;
    }

具体演示效果请见,因为box.net暂时无法访问,就不给出下载地址了,如果群众有需要可以和我说

PS:今天GOOGLE PR再次神奇的更新,本站已经是3了。。嘿嘿,嘿嘿。。

文章作者:simaopig
本文地址:http://www.xiaoxiaozi.com/2009/06/24/940/
版权所有 © 转载时必须以链接形式注明作者和原始出处!

29 Responses to “手机号验证正则表达式”

  1. #1 jfbcb 回复 | 引用 Post:2010-06-22 12:45

    :mrgreen: 可以验联通的么

    [回复]

  2. #2 simaopig 回复 | 引用 Post:2010-06-22 12:52

    @jfbcb
    我的这个没有把联通加进去。主要是因为我不知道联通的号段。

    你看一下那个正则,非常的简单。你只需要把联通的号段放进去就OK了。呵。 :mrgreen:

    [回复]

  3. #3 jfbcb 回复 | 引用 Post:2010-06-28 15:58

    ;-) 3Q...谢谢大哥..了..

    [回复]

  4. #4 simaopig 回复 | 引用 Post:2010-06-28 15:59

    @jfbcb
    不客气。其实知道号段后挺容易的。呵。 :razz:

    [回复]

  5. #5 松松 回复 | 引用 Post:2010-09-02 14:48

    13477777777
    也行啊,不专业

    [回复]

  6. #6 松松 回复 | 引用 Post:2010-09-02 14:49

    13000000000有这样的号码吗

    [回复]

  7. #7 simaopig 回复 | 引用 Post:2010-09-02 14:52

    @松松
    什么不专业呢?没太明白您的意思,是说我写的不专业吗?

    另外,13000000000 这样的号码,理论上是会有的。

    [回复]

  8. #8 jfbcb 回复 | 引用 Post:2011-09-13 11:56

    小小子,好久不见了…想换个友链可以不…FLY’s SKY–峰窝 http://jfbcb.com
    现在google搜索正则..就是你了..

    [回复]

  9. #9 simaopig 回复 | 引用 Post:2011-09-14 23:53

    @jfbcb
    已经添加!

    [回复]

评论分页

发表评论

:wink: :twisted: :roll: :oops: :mrgreen: :lol: :idea: :evil: :cry: :arrow: :?: :-| :-x :-o :-P :-D :-? :) :( :!: 8-O 8)