使用正則表達(dá)式可以進(jìn)行強(qiáng)大的模式匹配和文本檢索與替換功能。
手機(jī)號正則驗(yàn)證
function checkPhone() {
var phone = document.getElementById('phone').value;
if(!(/^1[3|4|5|7|8]\d{9}$/.test(phone))) {
alert("手機(jī)號碼有誤,請重填");
return false;
}
}
** ^1[3|4|5|7|8]\d{9}$ **
表示以1開頭惜犀,第二位可能是3/4/5/7/8等的任意一個(gè),在加上后面的\d表示數(shù)字[0-9]的9位剑逃,總共加起來11位結(jié)束沛膳。
身份證正則驗(yàn)證
//身份證正則表達(dá)式(15位)
isIDCard1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;
//身份證正則表達(dá)式(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)$)
其他的驗(yàn)證
提取信息中的網(wǎng)絡(luò)鏈接:(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+)
提取信息中的中國手機(jī)號碼:(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}
提取信息中的整數(shù):\d+
提取信息中的浮點(diǎn)數(shù)(即小數(shù)):(-?\d*)\.?\d+
提取信息中的任何數(shù)字 :(-?\d*)(\.\d+)?
提取信息中的中文字符串:[\u4e00-\u9fa5]*
提取信息中的雙字節(jié)字符串 (漢字):[^\x00-\xff]*
寫在最后
項(xiàng)目中暫時(shí)用到的
function checkPhone() {
var phone = document.getElementById('phone').value;
if(!(/^1[3|4|5|7|8]\d{9}$/.test(phone))) {
alert("手機(jī)號碼有誤,請重填");
return false;
}
}
function checkId() {
var id = document.getElementById('id').value;
//身份證正則表達(dá)式(15位)
var isId1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;
//身份證正則表達(dá)式(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 ;
}
}