正則表達式

正則表達式語法
    普通字符:直接返回字符
        如:字母、數字、漢字、下劃線、以及沒有特殊定義的標點符號
    簡單的轉義字符:直接返回字符含義
        如:\n換行 \t製表符 \\表示斜槓  斜槓後面加特殊字符都表示字符本身
    
    標準字符集合:返回一個滿足要求的集合,大寫的時候表示的是相反的含義
        \d 任意一個數字,0~9的任意一個
        \w 任意一個字母或數字或下劃線,也就是A~Z,a~z,0~9,_ 中任意一個
        \s 包括空格、製表符、換行符等空白字符的其中一個
        .  小數點可以匹配任意一個字符,如果要匹配包括“\n”在內的所有字符,一般用[\s\S]
    
    自定義字符集合:[]方括號匹配方式,能夠匹配方括號中任意一個字符
        [ab5@] 匹配a或b或5或@
        [^abc] 匹配a b c 之外的任意一個字符
        [f-k] 匹配f-k之間的任意一個字符
        [^A-F0-3] 匹配A-F0-3之外的任意一個字符
        --除了^和-之外,正則表達式的特殊字符被包含在中括號中,則失去了特殊意義,只表示符號本身
        --標準字符集合除小數點外,如果被包含於中括號中,自定義字符集合將包含該集合。比如:
            [\d.\-+] 匹配數字,小數點,-和+
            
    量詞:修飾前一個表達式匹配次數的特殊符號 匹配次數默認爲n,在表達式後加個?匹配次數設置爲m,如{1,8},{1,8}?
        {n}表示前一個表達式重複n次
        {m,n} 表示前一個表達式至少重複m次,最多重複n次
        {m,} 表達式至少重複m次
        ? 匹配表達式0次或者1次,相當於{0,1}
        + 匹配表達式至少出現1次 相當於{1,}
        * 表達式不出現或出現任意次,相當於{0,}
        
    字符邊界:標記複合某種條件的位置
        ^ 與字符串開始的地方匹配 ^a表示以a開頭的字符串
        $ 與字符串結束的地方匹配 a$表示以a結尾的字符串
        \b 匹配一個單詞的邊界 前面的字符和後面的字符不全是\w
        
    選擇符和分組
        | 左右兩邊表達式之間爲“或”關係,匹配左邊或匹配右邊
        () 捕獲組 (表達式1)((表達式2)(表達式3))\1  表示給匹配到的結果分組,通過後面跟着的\n確定返回的內容,n的值根據左括號位置來定 這種方式會把返回寫入到內存中
        
    預搜索:用於匹配字符串開頭或結尾
        (?=exp) 修飾前一個表達式後面能匹配表達式exp,即以滿足exp表達式結尾的詞 如[abc](?=ing)表示匹配abcing但是返回的是abc,如果想返回abcing需要用([abc](?=ing))\1
        (?<=exp) 以exp開頭
        (?!exp) 不以exp結尾
        (?<!exp) 不以exp開頭

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章