JS常用正则表达式一

JS正则表达式

正则表达式:描述一个字符模型的对象,由一些特殊的符号组成,其组成的字符模型用来匹配各种表达式

正则表达的创建

直接量创建

<script>
    var patt1 = /is/g;  
</script>

实例化RegExp对象

<script>
        var patt = new RegExp("is","g");
</script>
  • //i执行对大小写敏感的匹配
  • //g 执行全局匹配
  • //m执行多行匹配
<script>
        var str = "is this all there is";
        //查找str里面所有包含is字符串的
        var patt1 = /is/g;
        //输出:  is,is,is 
        document.write(str.match(patt1));
</script>

正则表达式的方括号([])

  • [abc] 查找【】里面的任何字符(a,b,c)中的其中一个
  • /[abc]his/ 匹配的字符为:[abc]里面的字符+his,结果:ahis,bhis,chis
  • [^abc] 查找不包括a,b,c的字符
  • [0-9] 查找任何从0至9的数字
  • [a-z] 查找任何从小写a到小写z的字符
  • [A-Z] 查找任何从大写A到Z的字符
  • [a-zA-Z]查找任何字母
  • red|blue|green 查找任何指定项:
    查找的是red,blue,green中的其中一个,当[red|blue|green]查找的里面的单个字符,如:,r,e,d,b….
    <script>
            var str = "is this all  3389 5there is";

            var patt1 = /[abc]/;//与/[(abc)]/写法相同

            console.log("[abc]:"+str.match(patt1));
            // [abc]his匹配的字符为:[abc]里面的字符+his,结果:ahis,bhis,chis
            var patt2 = /[abc]his/;
            //打印:null
            console.log("[abc]his:"+str.match(patt2));
            var patt3 = /[thf]his/;
            console.log("[thf]his:"+str.match(patt3));

            var patt4 = /[^abc]/g;
            console.log("/[^abc]/:"+str.match(patt4));

            var patt7 = /[0-9]/g;
            console.log("/[0-9]/g:"+str.match(patt7));

            var patt8 = /[^0-9]/g;
            console.log("/[^0-9]/g:"+str.match(patt8));


            var patt5 = /red|blue|green/;
            console.log("/red|blue|green/:"+str.match(patt5));

            var patt6 = /[red|blue|green]/;
            console.log("/[red|blue|green]/:"+str.match(patt6));
        </script>

正则表达式常用符号

  • ^ 匹配字符串的开始,查找字符串的开头是以xxx开始的
  • $ 匹配字符串的结束,查找字符串的结束是一xxx结束的
  • \ 代表转义的
  • \s 空格,也可以直接空格
  • \S 任何非空白字符
  • \d 匹配一个数字字符,等价于[0-9]
  • \D 出来数字以外的任何字符,等价于[^0-9]
  • \w 匹配一个数字、下划线或字母,等价于[A-Za-z0-9]
  • . 除了换行符之外的任意字符
    <script>
            var str = "is this all _ _W 3389 5there is ttt ";
            //str开始是以:is开头的
            var patt1 = /^is/g;
            console.log("/^is/g:"+str.match(patt1));
            //str结束是:ttt
            var patt2 = /ttt$/g;
            console.log("/ttt$/g:"+str.match(patt2));
            //空格
            var patt3 = /\s/g;
            console.log(" /\s/g:"+str.match(patt3));
            //空格
            var patt4 = / /g;
            console.log(" / /g:"+str.match(patt4));
            //非空格
            var patt5 = /\S/g;
            console.log("/\S/g:"+str.match(patt5));
            //0-9
            var patt6 = /\d/g;
            console.log(" /\d/g:"+str.match(patt6));
            //[^0-9]
            var patt7 = /\D/g;
            console.log(" /\D/:"+str.match(patt7));
            //匹配一个数字、下划线或字母
            var patt8 = /\w/g;
            console.log("/\w/g:"+str.match(patt8))
            //除了换行符之外的任意字符
            var patt9 = /./g;
            console.log("/./g:"+str.match(patt9))
        </script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值