原文鏈接:http://caibaojian.com/regexp-example.html
正則表達式(regular expression)是一個描述字符模式的對象。使用javascript正則表達式可以進行強大的模式匹配和文本檢索與替換功能。
手機號碼正則表達式驗證。
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位結束。
具體請參考這篇文章解說:JS最新手機號碼檢驗正則表達式 (絕對能讓你明白)
我猜你可能會喜歡關於JavaScript正則的文章:正則
- JavaScript中的正則表達式總結(大量的正則)
- JavaScript正則表達式(例子)
固定電話號碼正則表達式:
function checkTel(){
var tel = document.getElementById('tel').value;
if(!/^(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}$/.test(tel)){
alert('固定電話有誤,請重填');
return false;
}
}
身份證正則:
//code from http://caibaojian.com/regexp-example.html
//code from http://caibaojian.com/regexp-example.html
//身份證正則表達式(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{4}$/;
身份證正則合並:(^\d{15}$)|(^\d{17}([0-9]|X)$)
最新手機號碼正則表達式:2016年1月13更新,以下不再使用
var tel = $("#telNo").val(); //獲取手機號 var telReg = !!tel.match(/^(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$/); //如果手機號碼不能通過驗證 if(telReg == false){ }
2015-11-20(新增兼容電話和手機正則)
((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)
匹配格式:11位手機號碼3-4位區號,7-8位直播號碼,1-4位分機號如:12345678901、1234-12345678-1234
使用方式同上:
var telReg = !!tel.match(/^((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)$/); //如果通過認證 if(telReg){ }
其他
提取信息中的網絡鏈接:(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]*
使用:
test()方法在字符串中查找是否存在指定的正則表達式,並返回布爾值,如果存在則返回true,否則返回false。
var pattern = new RegExp('Box','i');
var str = 'box';
alert(pattern.test(str)); //true
var pattern = /Box/i;
var str = 'box';
alert(pattern.test(str)); //true
var pattern = /Box/i;
var str = 'This is a box';
alert(pattern.test(str)); //true
原文鏈接:
js最新手機號碼、電話號碼正則表達式 版權所有,轉載時請注明出處,違者必究。