美文网首页
正则表达式总结

正则表达式总结

作者: weekendzhu | 来源:发表于2018-08-27 16:22 被阅读5次

    有问题可以留言询问

    正则表达式的思维导图
    https://www.processon.com/view/link/5b835f73e4b0534c9bbcb7f5

    javascript代码测试

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
       
        <title>Document</title>
    </head>
    <body>
        
    </body>
    </html>
    
    <script>
      
      /*****
       * 
       * pattern 正则表达式文本
       * flags 该参数可以是下面单个值或者几个值的任意组合:
        i               不区分大小写的匹配
        g               表示全局匹配
        m               将字符串视为多行,不管是那行都能匹配,使得多行也可匹配
        s               将字符串视为单行,将\n视为普通字符,即不是换行
        x               将模式中的空白忽略;
        A               强制从目标字符串开头匹配;
        D               如果使用$限制结尾字符,则不允许结尾有换行;
        U               只匹配最近的一个字符串;不重复匹配;
    
       * **************/
    
    
    /*
      var reg =new RegExp("h.llo",'gi');  //匹配单个任意字符
      console.log('hEllojsHellohallo heello'.match(reg)); //完全匹配 ,如果 没加g也是匹配一次就没了
    */
    var times=0;
    
    function write(reg,str){
      document.write("<br/>字符串"+str+"<br/>使用模式"+reg+"<br/>匹配结果为"+str.match(reg)+"<br/>");
      
    }
    
    //全词匹配
    var reg;
    var str = "Ben Ban B_n Btn B[1]n B11n B2n B4n B+n B9n "; 
    reg= new  RegExp("Ben",'gi');
    
    write(reg,str);
    
    reg= new  RegExp("B.n",'gi');
    
    write(reg,str);
    
    reg= new  RegExp("B[123]n",'gi');
    write(reg,str);
    
    reg= new  RegExp("B[1-3]n",'gi');
    write(reg,str);
    
    reg= new  RegExp("B[^1-3]n",'gi');
    write(reg,str);
    
    
    reg= new  RegExp("B\\[1\\]n",'gi');
    write(reg,str);
    
    reg= new  RegExp("B\\[1\\]n",'gi');
    write(reg,str);
    
    reg= new  RegExp("B[1+9]n",'gi');
    write(reg,str);
    
    reg= new  RegExp("B[1]+n",'gi');
    write(reg,str);
    
    reg= new  RegExp("B[1]+9n",'gi');
    write(reg,str);
    
    reg= new  RegExp("B[1]?[9]n",'gi');
    write(reg,str);
    
    reg= new  RegExp("B[1]*[9]?n",'gi');
    write(reg,str);
    
    reg= new  RegExp("B[1]*[9]?n",'gi');
    write(reg,str);
    
    var str2="";
    str2=" hello i\'m davidway ";
    reg = new RegExp("\b ");
    write(reg,str2);
    
    
    //javascript 不支持回溯引用?
    str2="<h1>test</h1>";
    reg = new RegExp("<h([1-2])>.*?</h\1>");
    write(reg,str2);
    
    
    str2="http://www.baidu.com ";
    reg = new RegExp(".+(?=:)");
    //var reg2 = new RegExp(".+:");
    write(reg,str2);
    
    str2="http://www.baidu.com \$23.24";
    reg = new RegExp(".+(?=:)");
    //var reg2 = new RegExp(".+:");
    write(reg,str2);
    
    reg = new RegExp("(?<=\$)[0-9]+.[0-9]+");
    //var reg2 = new RegExp(".+:");
    write(reg,str2);
    </script>
    

    相关文章

      网友评论

          本文标题:正则表达式总结

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