正則表達式語法
普通字符:直接返回字符
如:字母、數字、漢字、下劃線、以及沒有特殊定義的標點符號
簡單的轉義字符:直接返回字符含義
如:\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開頭
正則表達式
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.