js最新⼿机号码、电话号码正则表达式
正则表达式(regular expression)是⼀个描述字符模式的对象。使⽤JavaScript正则表达式可以进⾏强⼤的模式匹配和⽂本检索与替换功能。 ⼿机号码正则表达式验证。
function checkPhone(){
var phone = ElementById('phone').value;
if(!(/^1[3456789]d{9}$/.test(phone))){
alert("⼿机号码有误,请重填");
return false;
}
}
或者
function checkPhone(){
var phone = ElementById('phone').value;
if(!(/^1(3|4|5|6|7|8|9)d{9}$/.test(phone))){
alert("⼿机号码有误,请重填");
return false;
}
js中文正则表达式
}
感谢 丐帮流寇 的提醒,我查了⼀下了解了“ ⼩括号就是括号内看成⼀个整体 ,中括号就是匹配括号内的其中⼀个” 原来正则⾥⾯的中括号[]只能匹配其中⼀个,如果要匹配特定⼏组字符串的话,那就必须使⽤⼩括号()加或|,我还以为在中括号中也能使⽤或|符号,原来|在中括号⾥⾯也是⼀个字符,并不代表或。[3457]匹配3或者4或者5或者7,⽽(3457)只匹配3457,若要跟前⾯⼀样可以加或(3|4|5|7)。[34|57]匹配3或者4或者|或者5或者7.⽽(34|57)能匹配34或者57。 下⾯简单的解释⼀下: ^1(3|4|5|7|8)d{9}$ 表⽰以1开头,第⼆位可能是3/4/5/7/8等的任意⼀个,在加上后⾯的d表⽰数字[0-9]的9位,总共加起来11位结束。 具体请参考这篇⽂章解说: (绝对能让你明⽩) 我猜你可能会喜欢关于JavaScript正则的⽂章:
1. (⼤量的正则)
2. (例⼦)
固定电话号码正则表达式:
function checkTel(){
var tel = ElementById('tel').value;
if(!/^((d{3,4})|d{3,4}-|s)?d{7,14}$/.test(tel)){
alert('固定电话有误,请重填');
return false;
}
}
⾝份证正则:
/
/⾝份证正则表达式(15位)
isIDCard1=/^[1-9]d{7}((0d)|(1[0-2]))(([0|1|2]d)|3[0-1])d{3}$/;
//⾝份证正则表达式(18位)
isIDCard2=/^[1-9]d{5}[1-9]d{3}((0d)|(1[0-2]))(([0|1|2]d)|3[0-1])d{4}$/;
⾝份证正则合并:(^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+)
提取信息中的中国电话号码(包括移动和固定电话):((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';
st(str)); //true
var pattern = /Box/i;
var str = 'box';
st(str)); //true
var pattern = /Box/i;
var str = 'This is a box';
st(str)); //true