美文网首页
正则表达式

正则表达式

作者: 洛洛kkkkkk | 来源:发表于2017-04-20 19:23 被阅读0次
    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title>正则表达式</title>
        </head>
        <body>
        </body>
        <script type="text/javascript">
            //正则表达式
            //自己定义的用来验证字符串的一种规则
            
            //判断一个字符串是不是手机号
            //11位、1开头、纯数字(人类语言)
            //把人类演员的规则转化为计算机能看得懂的表达式,就是正则表达式
            
            //正则表达式的创建的两种方式
            //1、var reg = /参数1/参数2
            //2、var reg = new RegExp(参数1,参数2)
            //参数1 就是我们要定义的规则
            //参数2 可以跟i,g,m
                //i 查找的时候忽略大小写
                //g 全局匹配(正常情况下只匹配一个)
                //m 允许多行匹配
            
            var reg1 = /5/;     //条件
            var str1="haha543";  //来验证是否符合条件
            
            //match 就是来看下这个字符串到底符合不符合我们的条件
            console.log(str1.match(reg1));
            //元字符
            //\d   数字
            var reg2=/\d/g;
            var str2="我是2haha2ha";
            console.log(str2.match(reg2));
            //\w 查找单词字符  包含字母数字下划线
            var reg3=/\w/;
            var str3="hello";
            console.log(str3.match(reg3));
            //.  找单个字符,除了换行和结束符
            var reg4=/./;
            var str4="hello";
            console.log(str4.match(reg4));
            
            //[5-7]表示一个范围
            var reg5=/[5-7]/g;
            var str5="63653231273123";
            console.log(str5.match(reg5));
            //\b 匹配单词边界
            //边界放到单词前代表找以什么开头的单词(\bbox 代表以box开头的单词)
            //边界放到单词后代表找以什么结尾的单词
            //边界放到单词两边,代表只找这个单词
            
            var reg6=/\bbox\b/g;
            var str6="casdsa dsadas boxt";
            console.log(str6.match(reg6));
            
            //[]
            //[123]代表查找123中任意一个数
            //[^123]代表查找不是123的字符
            //[7-9]代表查找7-9的数组,包含7和9
            //[a-z]查找小写字符
            //[A-Z]查找小写字符
            //[A-z]查找大小写字符
            //[5-7|8-9]查找5-7或者8-9的数字
            var reg7=/[5-7|8-9]/g;
            var str7="6369532318273123";
            console.log(str7.match(reg7));
            
            //量词
            // + 5+至少包含一个5
            // * 5*包含0个或者多个5
            // ?     5?包含0个或者1个
            //5{2} 包含2个5的字符串
            //5{2,3}包含2个或者3个5的字符串
            //5$ 字符串最后面一个5
            //^5  字符串第一个位置的5
            
            var reg8=/5$/g;
            var str8="6355569532553515827531235";
            console.log(str8.match(reg8));
            
            //11位 纯数字 1开头
            var reg9=/^1\d{10}$/; 
            var str9="17858974903";
            console.log(str9.match(reg9));
            //正则调用test方法
            //吧字符串当做test的差别是关于,意味着检测这个字符串是否匹配这个正则
            //匹配返回true,不匹配返回false
            console.log(reg9.test(str9));
            
            //邮箱
            //1、开头数字字母
            //2、@前面可以是数字、字母、下划线
            //3、@前面5个以上的字符
            //4、@后面2个以上字符,可以是字母。数字
            //5、 .com结尾
            
            var reg10=/^[0-9|a-z|A-Z]\w{4}\w*@[0-9|a-z|A-Z]{2}[0-9|a-z|A-Z]*\.com$/;
            var str10="luoluokk@qq.com";
            console.log(str10.match(reg10));
            
            var reg11=/^[\u4E00-\u9FA5]+$/;
            var str11="哈哈";
            console.log(str11.match(reg11));
        </script>
    </html>
    

    相关文章

      网友评论

          本文标题:正则表达式

          本文链接:https://www.haomeiwen.com/subject/diolzttx.html