js对手机号身份证等验证

使用正则表达式可以进行强大的模式匹配和文本检索与替换功能。

手机号正则验证

function checkPhone() { 
    var phone = document.getElementById('phone').value; 
    if(!(/^1[3|4|5|7|8]\d{9}$/.test(phone))) { 
        alert("手机号码有误,请重填"); 
        return false; 
    } 
}

** ^1[3|4|5|7|8]\d{9}$ **
表示以1开头,第二位可能是3/4/5/7/8等的任意一个,在加上后面的\d表示数字[0-9]的9位,总共加起来11位结束。

身份证正则验证

//身份证正则表达式(15位) 
isIDCard1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/; 
//身份证正则表达式(18位) 
isIDCard2=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}(\d|X)$/; 
//身份证正则合并:
(^\d{15}$)|(^\d{17}([0-9]|X)$)

其他的验证

提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
提取信息中的邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
提取信息中的图片链接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)? 
提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+) 
提取信息中的中国手机号码:(86)*0*13\d{9} 
提取信息中的中国固定电话号码:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8} 
提取信息中的中国电话号码(包括移动和固定电话):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14} 
提取信息中的中国邮政编码:[1-9]{1}(\d+){5} 
提取信息中的中国身份证号码:\d{18}|\d{15} 
提取信息中的整数:\d+ 
提取信息中的浮点数(即小数):(-?\d*)\.?\d+ 
提取信息中的任何数字 :(-?\d*)(\.\d+)? 
提取信息中的中文字符串:[\u4e00-\u9fa5]* 
提取信息中的双字节字符串 (汉字):[^\x00-\xff]*

写在最后

项目中暂时用到的

function checkPhone() { 
    var phone = document.getElementById('phone').value; 
    if(!(/^1[3|4|5|7|8]\d{9}$/.test(phone))) { 
        alert("手机号码有误,请重填"); 
        return false; 
    } 
}

function checkId() { 
    var id = document.getElementById('id').value; 
    //身份证正则表达式(15位) 
    var isId1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;
    //身份证正则表达式(18位) 
    var isId2=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}(\d|X)$/;
    if (!((isId1.test(id))||(isId2.test(id)))) {
        alert("id号码有误,请重填");
        return ;
    }
}

你可能感兴趣的:(js对手机号身份证等验证)