正则表达式(regular expression)是一个描述字符模式的对象。使用javascript正则表达式可以进行强大的模式匹配和文本检索与替换功能。

手机号码正则表达式验证。

function checkPhone(){

var phone = document.getElementById('phone').value;

if(!(/^1[34578]\d{9}$/.test(phone))){

alert("手机号码有误,请重填");

return false;

}

}

或者

function checkPhone(){

var phone = document.getElementById('phone').value;

if(!(/^1(3|4|5|7|8)\d{9}$/.test(phone))){

alert("手机号码有误,请重填");

return false;

}

}

感谢 丐帮流寇 的提醒,我查了一下了解了“ 小括号就是括号内看成一个整体 ,中括号就是匹配括号内的其中一个”

原来正则里面的中括号[]只能匹配其中一个,如果要匹配特定几组字符串的话,那就必须使用小括号()加或|,我还以为在中括号中也能使用或|符号,原来|在中括号里面也是一个字符,并不代表或。[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位结束。