1. 程式人生 > >專案經驗:js 結合正則表示式判斷是否為電話號碼或者手機號碼

專案經驗:js 結合正則表示式判斷是否為電話號碼或者手機號碼

function Phone(obj){
     var regBox = {
             regEmail : /^([a-z0 -9_\. -]+)@([\da -z\. -]+)\.([a -z\.]{2,6})$/, //郵箱
             regName : /^[a -z0 -9_ -]{3,16}$/, //使用者名稱
             regMobile : /^0?1[3|4|5|8][0 -9]\d{8}$/, //手機
             regTel1 : /^0[\d]{2,3} -[\d]{7,8}$/ , //座機帶區號
                regTel2 : /^[0 -9]{7,8}$/ , //座機不帶區號
                 //以下這個包括 手機 座機號 座機號帶區號
                regAll:  /(^[0-9]{3,4}\ -[0 -9]{3,8}$)|(^[0 -9]{3,8}$)|(^\([0 -9]{3,4}\)[0 -9]{3,8}$)|(^0{0,1}13[0 -9]{9}$)/
           };
    var mflag = regBox.regMobile.test(obj.value);
    var tflag1 = regBox.regTel1.test(obj.value);
    var tflag2 = regBox.regTel2.test(obj.value);
    if (mflag||tflag1||tflag2) {
        return true;
    }else{
     alert("聯絡方式輸入錯誤:請輸入形如 區號+電話號碼 的座機號,如0901-1234567,0901-12345678,010-1234567,010-12345678;或者不帶區號的座機號:如1234567,12345678;手機號請輸入第一位為1,第二位數字是3、4、5、8的十一位手機號!" );
        return false;
    };
}