正則表達式

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/;

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息