javascipt正则表达式之url检测与电话号码验证

发布时间:2019-10-12编辑:脚本学堂
本篇文章介绍了,使用javascript的正则表达式,进行url检测与电话号码验证的例子,有需要的朋友,可以参考下。

1、正则表达式的示例,用以捕获反向引用。
 

复制代码 代码示例:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>正则反向引用_www.jb200.com</title>
<link rel="stylesheet" type="text/css" href="">
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<script type="text/javascript">
    //子表达式 捕获 反向引用 满足第一位和最后一位相同,第二位和第三位相同的4位数 var regExp=/(d)(d)21/gi;
    function test(){
        var con=document.getElementById("content").value;
        //连续的3个数{n} ,
        //var regExp=/a{2}1{3}/gi;
        //{n,m}最少n次最多m次 js贪婪原则先匹配多的再去匹配少的
        //var regExp=/1{3,4}/gi;
        //+ 表示出现一次到任意多次
        //var regExp=/1+/gi;
        //* 表示0次到任意多次
        //var regExp=/a1*/gi;
        //? 表示出现0次到1次
        //var regExp=/a1?/gi;
        //[a-z]
        //var regExp=/./gi;
        //^开始 $结尾 定位符
        //var regExp=/han$/gi;
        //b 匹配边界(如空格隔开等)的目标字符串 B 相反
        //var regExp=/hanB/gi;
        // | 选择匹配
        var regExp=/(pan|潘|盘)/gi;

        while(res=regExp.exec(con)){
            window.alert(res[0]);
        }
    }
</script>
</head>
<body>
    <textarea id="content" cols="20" rows="10"></textarea><br/>
    <input type="button" value="test" onclick="test()">
</body>
</html>
 


2、javascipt-正则表达式练习--验证电话号码与URL检测
验证电话号码:
(1)电话号码由数字、"("、")"和"-"构成
(2)电话号码为8位或者11位(不含区号)
(3)如果电话号码中包含有区号 那么区号为三位或四位
(4)区号用"("、")"或"-"和其他部分隔开
(5)移动电话号码为11或12位,如果为12位,那么第一位为0
(6)11位移动电话号码的第一位和第二位为"13"
(7)12位移动电话号码的第二位和第三位为"13"

参考代码:
 

复制代码 代码示例:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Url解析与验证电话号码-www.jb200.com</title>
<link rel="stylesheet" type="text/css" href="">
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<script type="text/javascript">
    //url 解析 http://www.jb200.com:8080/abc/index.htm
    function test(){
        var inp=document.getElementById("inp").value;
        //var regExp=/^(http):(//)(www)([a-zA-Z0-9.]+):[0-9]+([a-zA-Z/])*(htm|html)$/i;
        var regExp=/^(http):(//)(w)33.([a-zA-Z0-9]+).[a-z]+(.)?[a-z]+:[0-9]+/([a-zA-Z])*(/)?[a-zA-Z/]+.(htm|html)$/gi;

        if(regExp.test(inp)){
            window.alert("是");
        }else{
            window.alert("不是");
        }

/*        var res=regExp.exec(inp)
        for(var i=0; i<res.length;i++){
            window.alert(res[i]);
        }
        */
    }
    function test2(){
        var inp=document.getElementById("inp2").value;
        //验证电话号码 与加区号和不加区号
        //var regExp=/^(d{3,4}?-|(d{3,4}))?d{8,11}$/;
        //验证手机号码 11位或者12位
        //var regExp=/^(0)?(13)d{9,9}$/;
        //var regExp=/^(((d{3,4}?-|(d{3,4}))?)|(0)?)d{8,11}$/;
        var regExp=/^((d{3,4}?-|(d{3,4}))?d{8,11}$)|(^0{0,1}13[0-9]{9}$)/;

        if(regExp.test(inp)){
            window.alert("正确的电话号码");
        }else{
            window.alert("错误的电话号码");
        }
    }
</script>
</head>
<body>
    <input id="inp" style="width:300px" type="text" /><input type="button"  value="验证url" onclick="test()"><br/>
    <input id="inp2" style="width:300px" type="text" /><input type="button"  value="验证电话号码" onclick="test2()"><br/>
</body>
</html>