您的位置:首页 > 其它

常用的表单正则验证

2015-08-16 22:56 330 查看
<script type="text/javascript">

        //手机验证码,1-6位纯数字

        if(_verNumber.length<1||_verNumber.length>6||!/^[0-9]*$/.test(_verNumber)){

                return false;

        }

        //只允许输入数字和字母

        var reg=/^[0-9a-zA-Z]*$/g 

        //只允许输入中文字、英文字母、数字和下划线

        var reg1=/^[\u0391-\uFFE5\w]+$/

        //只允许输入中文、字母

        var reg2=/^([\u4e00-\u9fa5\s]|[a-zA-Z])*$/

        //验证邮政编码

        /^[0-9]{6}$/

        //英文或者下划线

        /^([a-zA-Z_])*$/

        //密码为6到20位英文、数字、点号、下划线和#组成

        /^([a-z0-9A-Z._#]){6,20}$/

        //qq格式

        /^[1-9]\d{4,9}$/

        //请输入有效的日期格式:yyyy-MM-dd或yyyy-M-d

        /^(?:(?!0000)[0-9]{4}([-]?)(?:(?:0?[1-9]|1[0-2])\1(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])\1(?:29|30)|(?:0?[13578]|1[02])\1(?:31))|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-]?)0?2\2(?:29))$/

        //请输入有效的时间格式:yyyy-MM-dd HH:mm:ss

        /(\d{2}|\d{4})(?:\-)?([0]{1}\d{1}|[1]{1}[0-2]{1})(?:\-)?([0-2]{1}\d{1}|[3]{1}[0-1]{1})(?:\s)?([0-1]{1}\d{1}|[2]{1}[0-3]{1})(?::)?([0-5]{1}\d{1})(?::)?([0-5]{1}\d{1})/

        //货币格式

        /^(([1-9]\d*)|0)(\.\d{1,2})?$/

        //车架号

        /^([0-9A-Z]){17}$/

        //固定电话

        /^(\d{3,4}-?)?\d{7,9}$/g

        //邮箱

        var _reg= /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;

        if(!_reg.test(_email)){

                return false;

        }

        //手机号

        // var regex = /^1[3|4|5|8][0-9]\d{4,8}$/;

        if(!isMobile(_phone)){

                return false;

        }

        //身份证、验证码

        // var regex = /^(\d{15,15}|\d{18,18}|\d{17}(\d|X|x))$/;

        if(!isIdCardNo(user)){

                return false;

        }

        //验证码

        var codeRegex = /^[a-zA-Z0-9]{6}$/;

        if(!codeRegex.test(code)){

                return false;

        }

        //校验身份证

        function isIdCardNo(idCardNo) {

                // 15位和18位身份证号码的基本校验

                var check = /^\d{15}|(\d{17}(\d|x|X))$/.test(idCardNo);

                if (!check)

                        return false;

                // 判断长度为15位或18位

                if (idCardNo.length == 15) {

                        return idCardNoUtil.check15IdCardNo(idCardNo);

                } else if (idCardNo.length == 18) {

                        var aCity = {

                                11 : "北京",

                                12 : "天津",

                                13 : "河北",

                                14 : "山西",

                                15 : "内蒙古",

                                21 : "辽宁",

                                22 : "吉林",

                                23 : "黑龙江",

                                31 : "上海",

                                32 : "江苏",

                                33 : "浙江",

                                34 : "安徽",

                                35 : "福建",

                                36 : "江西",

                                37 : "山东",

                                41 : "河南",

                                42 : "湖北",

                                43 : "湖南",

                                44 : "广东",

                                45 : "广西",

                                46 : "海南",

                                50 : "重庆",

                                51 : "四川",

                                52 : "贵州",

                                53 : "云南",

                                54 : "西藏",

                                61 : "陕西",

                                62 : "甘肃",

                                63 : "青海",

                                64 : "宁夏",

                                65 : "新疆",

                                71 : "台湾",

                                81 : "香港",

                                82 : "澳门",

                                91 : "国外"

                        };

                        var iSum = 0;

                        if (idCardNo == "")

                                return true;

                        if (!/^\d{17}(\d|x)$/i.test(idCardNo))

                                return false;

                        idCardNo = idCardNo.replace(/x$/i, "a");

                        if (aCity[parseInt(idCardNo.substr(0, 2))] == null)

                                return false;

                        sBirthday = idCardNo.substr(6, 4) + "-"

                                        + Number(idCardNo.substr(10, 2)) + "-"

                                        + Number(idCardNo.substr(12, 2));

                        var d = new Date(sBirthday.replace(/-/g, "/"));

                        if (sBirthday != (d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d

                                        .getDate()))

                                return false;

                        for (var i = 17; i >= 0; i--)

                                iSum += (Math.pow(2, i) % 11)

                                                * parseInt(idCardNo.charAt(17 - i), 11);

                        if (iSum % 11 != 1)

                                return false;

                        return true;

                } else {

                        return false;

                }

        }

        // 手机号码校验

        function isMobile(str) {

                if (str == '' || $.trim(str) == '')

                        return false;

                var one = new RegExp('^13\\d{9});

                var two = new RegExp('^15\\d{9});

                var thr = new RegExp('^17\\d{9});

                var thr = new RegExp('^18\\d{9});

                if (one.test(str) || two.test(str) || thr.test(str)) {

                        return true;

                }

                return false;

        }

</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  表单正则验证