js 手机号

来源:互联网 发布:刘瑞阳 人工智能 编辑:程序博客网 时间:2024/04/19 20:01

 /^13\d{9}$/g||/^15[8,9]\d{8}$/g

其中 ^ 是以什么开头的意思, $ 是以什么结尾的意思,\d 匹配是任意一位数字,后面跟着的{9}是指\d重复的次数,相当于\d\d\d\d\d\d\d\d这个正则表达式匹配的是以13开头和以任意9个数字结尾的字串, / 是正则表达式的分界符,后面跟着的 g 呢,是对指定的字串全局匹配(不加则只匹配第一个),事实上有这个 g 和没有 g 在这里的情况是一样的,test方法返回一个 Boolean 值,它指出在被查找的字符串中是否存在模式,如存在则返回 true,否则返回 false。
g表示全局,全部,也就是文本内所有符合条件的,没有这个g的话,只匹配一次。
.test(),是前面那个/^....$/g,也就是正则表达式的一个方法。
 
下面是一段完整的监测代码,供大家参考:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script language="javascript">
function chk()
{
var tel = document.all("text").value;
if(/^13\d{9}$/g.test(tel)||(/^15[8,9]\d{8}$/g.test(tel)))
        {
           alert("手机号正确");
         }
else
        {
           alert("手机号错误");
         }
}
</script>
</HEAD>
<BODY>
<form method="" action="">
手机号:<input type="text" name="text">
 <input type="button" value="检测" onclick="chk()">
</form>
</BODY>
</HTML>
 
验证中国固定电话号码:
(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}