常用正则帮助类

来源:互联网 发布:linux强制删除用户 编辑:程序博客网 时间:2024/06/08 05:00
//常用正则帮助类var RegExpHelper = {    //验证整数      validateNum: function (val) {        var patten = /^-?\d+$/;        return patten.test(val);    },    //验证实数      validateRealNum: function (val) {        var patten = /^-?\d+\.?\d*$/;        return patten.test(val);    },    //验证小数,保留一位小数点      validateNum: function (val) {        var patten = /^-?\d+\.?\d{0,1}$/;        return patten.test(val);    },    //验证小数      validateFloat: function (val) {        var patten = /^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/;        return patten.test(val);    },    //只能输入数字和字母      validateNumOrLetter: function (val) {        var patten = /^[A-Za-z0-9]+$/;        return patten.test(val);    },    //验证颜色      validateColor: function (val) {        var patten = /^#[0-9a-fA-F]{6}$/;        return patten.test(val);    },    //验证URL      validateUrl: function (val) {        var patten = /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\*\+,;=]|:|@)|\/|\?)*)?$/i;        return patten.test(val);    },    //验证空      validateNull: function (val) {        return val.replace(/\s+/g, "").length == 0;    },    //验证时间2010-10-10      validateDate: function (val) {        var patten = /^\d{4}[\/-]\d{1,2}[\/-]\d{1,2}$/;        return patten.test(val);    },    //只能输入数字、字母、下划线      validateNumLetterLine: function (val) {        var patten = /^[a-zA-Z0-9_]{1,}$/;        return patten.test(val);    },    //验证是否是手机号码    validateMobile: function (val) {        var patten = /(^13\d{9}$)|(^14)[5,7]\d{8}$|(^15[0,1,2,3,5,6,7,8,9]\d{8}$)|(^17)[6,7,8]\d{8}$|(^18\d{9}$)/g;        return patten.test(val);    },    //验证是否是email    validateMail: function (val) {        return (new RegExp(/^\w+((-\w+)|(\.\w+))*\-AT-[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/).test(val));    },    //验证身份证号码    validateIdCard: function (val) {        if (isNaN(val)) return false;        var len = val.length, re;        if (len == 15)            re = new RegExp(/^(\d{6})()?(\d{2})(\d{2})(\d{2})(\d{3})$/);        else if (len == 18)            re = new RegExp(/^(\d{6})()?(\d{4})(\d{2})(\d{2})(\d{3})(\d)$/);        else return false;        var a = val.match(re);        if (a != null) {            if (len == 15) {                var D = new Date("19" + a[3] + "/" + a[4] + "/" + a[5]);                var B = D.getYear() == a[3] && (D.getMonth() + 1) == a[4] && D.getDate() == a[5];            }            else {                var D = new Date(a[3] + "/" + a[4] + "/" + a[5]);                var B = D.getFullYear() == a[3] && (D.getMonth() + 1) == a[4] && D.getDate() == a[5];            }            if (!B) { return false; }        }        return true;    },    //验证ip地址    validateIp: function (val) {        var check = function (v) { try { return (v = 0) } catch (x) { return false } };        var re = val.split(".")        return (re.length == 4) ? (check(re[0]) && check(re[1]) && check(re[2]) && check(re[3])) : false    }}
原创粉丝点击