常用的js格式验证

来源:互联网 发布:小学教师 知乎 编辑:程序博客网 时间:2024/05/22 11:43
// 判断给定数据是否符合某种格式
function isData(data, type) {
     var tmp_str = data;
     switch (type) {
     case 'username':// 用户名
            var pattern = /^[A-Za-z][A-Za-z0-9\-]{3,19}$/;
            break;
     case 'usernames':// 用户名
            var pattern = /^[\u4E00-\u9FA5]+$/;
            break;
     case 'email':// 邮件地址
            if (tmp_str.length > 50)
                 return false;
            var pattern = /^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,4}$/i ;
            break;
     case 'url':// URL网址
            var pattern = /^(http:\/\/)([A-Za-z0-9]+\.)?[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=?%-&_~`@\[\]':+!]*([^<>\"])*$/ ;
            break;
     case 'english':// 英文
            var pattern = /^[A-Za-z]+$/;
            break;
     case 'mobile':// 移动电话
            var pattern = /^1[0-9]{10}$/;
            break;
     case 'phone':// 电话号码
            var pattern = /^((([0-9]{3}))|([0-9]{3}-))?((0[0-9]{2,3})|0[0-9]{2,3}-)?[1-9][0-9]{6,7}$/ ;
            break;
     case 'idcard':// 身份证
            var pattern = /(^(\d{15}|\d{17}[\dxX])$)/;
            break;
     case 'zip':// 邮政编码
            var pattern = /^[1-9][0-9]{5}$/;
            break;
     case 'chinese': // 中文
            var pattern = /^[\u0391-\uFFE5]+$/;
            break;
     case 'qq': // QQ号码
            var pattern = /^[1-9][0-9]{4,8}$/;
            break;
     case 'vcode': // 验证码
            var pattern = /^[a-z0-9]{4}$/;
            break;
     case 'password': // 密码
            var pattern = /^[\S]{4,20}$/;
            break;
     case 'nickname': // 昵称
            var pattern = /^[\S]{2,25}$/;
            break;
     }
     if (!pattern.exec(tmp_str))
            return false;
     return true;
}
原创粉丝点击