正则表达式

1、什么是正则正则表达式

     正则 :也叫作规则,让计算机可以读懂人类的规则,通常都是用来操做字符串的函数


2、正则的写法性能

    var re = //;            // 简写   简写比全称性能好spa

    var re = new RegExp();  // 全称   注意:当正则须要传参的时候,必定要用全称的写法字符串


3、正则中的默认回调函数

    一、正则中的默认 : 区分大小写test

         若是不区分大小写的话 : 在正则的最后加标识i方法

            var re = //i;计算机

            var re = new RegExp('','i');集合

    二、正则中的默认 : 正则匹配成功就会结束,不会继续匹配

       若是想所有查找 : 就要加标识 g(全局匹配)

            var re = //g;

 

4、正则中的量词

    一、量词的概念 : 匹配不肯定的位置,通常用{}来表明

    二、{n,m};             // 最少出现n次,最多出现m次

    三、{n,};              // 最少出现n次

    四、{n};               // 正好出现n次

    五、+ 至关于 {1,}      // 最少出现1次

    六、?至关于 {0,1}    // 出现0次,或者1次

    七、* 至关于 {0,}      // 至少出现0次

    八、^                    // 若是 ^ 放在正则的最开始位置,就表明起始的意思

    九、$                  // 若是 $ 放在正则的最后位置,就表明起始的意思

 

3、正则的经常使用方法

    一、test : 正则去匹配字符串,若是匹配成功就返回真,若是匹配失败就返回假(通常用以作判断的)。—> 返回Boolean类型
        test的写法 : 正则.test(字符串);

    二、search : 正则去匹配字符串,若是匹配成功就返回匹配成功的位置,若是匹配失败就返回-1    —> 返回Number类型
        search的写法 : 字符串.search(正则);

    三、match : 正则去匹配字符串,若是匹配成功就返回匹配成功的数字,若是匹配失败就返回null   —> 返回Object类型(Array)
        match的写法 : 字符串.match(正则);

    四、replace : 正则去匹配字符串,匹配成功的字符去替换成新的字符串   —> 返回String类型
        replace的写法 : 字符串.replace(正则,新的字符串);
        注意:replace 的第二个参数 : 能够是字符串,也能够是一个回调函数,这个回调函数里面的的第一个参数,就是匹配成功的字符

 

4、匹配子项

    一、匹配子项是由小括号来表明的。(小括号还有分组操做的意思)

    二、写法 : var re = /(正则第一项)(第二项)(第三项)/;

    三、replace : replace的第二个参数若是是一个回调函数的话,那么这个函数的第一个参数是:当前正则的总体;第二个参数是:正则总体的第一项,第三个参数是正则总体的第二项....以此类推

    四、match : 只有当match不加全局匹配g的时候,才能够获取到子项的集合

 

5、正则中经常使用到的转义字符

    .   任意字符 (在正则中的"."表明的是任意字符,而在正则中真正的"."的输写格式是"\.")

    \s  空格

    \S  非空格

    \d  数字

    \D  非数字

    \w  字符            ( 字母,数字,下划线_ 都是字符)

    \W  非字符         ( 特殊字符,汉字等都是非字符)

    \b  独立的部分   (起始,结束,空格)

    \B  非独立的部分

    \1  重复的第一个子项

    \2  重复的第二个子项

    ……


6、正则表达式字符类

    一、字符类 : 一组类似的元素,用[]来表示,中括号的总体表明一个字符
        写法 : var re = /a[bcd]e/;

    二、排除 : 若是 ^ 写在[]里面的话,就表明排除的意思;若是 ^ 放在正则的最开始位置,就表明起始的意思
        写法 : var re = /a[^bcd]e/;

    三、范围 : 在[]里面写匹配的范围,如a-z表明的是字母a一直到字母z的26个字母        写法 : var re = /a[a-z]b/;

相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息