js验证 正则表达式 包含手机号码、座机号码、电子邮箱、密码、姓名、身份证号码等表单数据的验证

来源:互联网 发布:电脑软件全都不见了 编辑:程序博客网 时间:2024/05/16 02:10

一、手机号码验证(包含了13段号码、14段号码、15段号码和18段号码)  

    var reg = /^(13[0-9]|145|147|15[0-3]|15[5-9]|180|18[2-3]|18[6-9])[0-9]{8}$/;

    if(!reg.test($mobilePhone)){
        alert('手机号码输入有误!');
    }else{
        alert('手机号码输入正确!');

    }


二、座机号码/固定电话验证(区号3位或4位,号码7位或8位,区号与电话号码之间用小括号或“-”隔开)

    1、

    var reg = /^(\([0-9]{3,4}\)|[0-9]{3,4}\-)[0-9]{7,8}$/;

    if(!reg.test($telePhone)){

        alert('电话号码输入有误!');

    }else{

        alert('电话号码输入正确!');

    }

    匹配类型为:

    123-1234567,123-12345678,1234-1234567,1234-12345678,

    (123)1234567,(123)12345678,(1234)1234567,(1234)12345678。


    2、

    var reg = /^(\([0-9]{3,4}\)|[0-9]{3,4}\-)?[0-9]{7,8}$/;

    if(!reg.test($telePhone)){

        alert('电话号码输入有误!');

    }else{

        alert('电话号码输入正确!');

    }

    第二种写法的匹配类型除了第一种写法的匹配类型外,多了两种匹配类型,即不带区号的电话号码,如:1234567,12345678。

    当然,这两种验证电话号码的公式也可以写为:

    var reg = /^(\(\d{3,4}\)|\d{3,4}\-)\d{7,8}$/; 和 var reg = /^(\(\d{3,4}\)|\d{3,4}\-)?\d{7,8}$/;


三、电子邮箱验证(包含“@”和“.”)

    var reg = /(\S)+[@]{1}(\S)+[.]{1}(\w)+/;

    if(!reg.test($email)){

        alert('邮箱格式不正确!');

    }else{

        alert('正确的电子邮箱!');

    }


四、密码验证()


五、用户名验证(邮箱/手机号/自定义用户名[自定义用户名只能由中文、英文、数字及“_”、“-”组成,且长度为4~20])

    var str_email = "^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$";    //邮箱正则表达式

    var str_mobile = "^0?(13|15|18|14)[0-9]{9}$";    //手机号码正则表达式

    var str_num = "^[0-9]+$";    //纯数字正则表达式

    var str_name = "[A-Za-z0-9_\\-\\u4e00-\\u9fa5]+$";    //自定义用户名正则表达式

    if(regName == ''){

        alert('请输入用户名!');

    }else{

        if(regName.indexOf("@") > -1){

            if(!new RegExp(str_email).test(regName)){

                alert('邮箱地址不正确,请重新输入');

            }

        }else{

            if(regName.length < 4 || regName.length > 20){

                    alert( '用户名长度只能在4-20位字符之间');

            }else if(!new RegExp(str_name).test(regName)){

                    alert('用户名只能由中文、英文、数字及“_”、“-”组成');

            }else if(new RegExp(str_num).test(regName) && !new RegExp(str_mobile).test(regName)){

                    alert('用户名不能是纯数字,请确认输入的是手机号或者重新输入');

            }

        }

    }



待续……


原创粉丝点击