日期:2014-05-16  浏览次数:20396 次

js 正则表达式 验证问题

//符合这几种通过
/*
固话:例:05718888888
手机:11位,例:13088888888
:,例:05718888888-007 -- 上面的两种都可以的,但是在号码加-007 数字,用正则怎么验证?就是固话后面-数字也给通过
*/
function   aa(){
//假如已经获取到号码了
 reg = /^[0-9]*$/;
            if(Phone != ''){
              if(Phone.length < 11 || Phone.length > 12 || !reg.test(Phone)){
               alert(号码错误);
             } 
    }
}


---
大虾 指点一二
正则表达式 javascript 正则 js

------解决方案--------------------
function  aa(Phone){
     var reg = /^\d{11}$
------解决方案--------------------
^\d{11}\-\d{3}$/;
     if(!reg.test(Phone)){
         alert('号码错误');
    }
}
------解决方案--------------------


    function aa(Phone) {
        var reg = /^\d{11}(\-\d+)?$/;
        if (Phone != '' && !reg.test(Phone)) alert('号码错误:'+Phone);
    }
    aa('13088888888');
    aa('05718888888')
    aa('05718888888-007')
    aa('8888888-007')
    aa('05718888888asdfa');
------解决方案--------------------
    //手机:11位
    //固话:11位或12位
    //分机号:3位(可选)
    var a ="02088888888-010";
    var b = /^\d{11}\d?(-\d{3})?$/.test(a);
------解决方案--------------------

    function aa(e) {
document.write(e," : ",/^\d{11}(\-\d{3})?$/.test(e),"<br />");
    }
    aa('13088888888');
    aa('05718888888')
    aa('05718888888-75')
    aa('05718888888-007')
    aa('8888888-007')