正則表達式--筆記

1、關於正則表達式的() [] {}說明

()   是爲了提取匹配的字符串。表達式中有幾個()就有幾個相應的匹配字符串。

(\s*)表示連續空格的字符串。

[]    是定義匹配的字符範圍。比如 [a-zA-Z0-9] 表示相應位置的字符要匹配英文字符和數字。[\s*]表示空格或者*號。

{}    一般用來表示匹配的長度,比如 \s{3} 表示匹配三個空格,\s[1,3]表示匹配一到三個空格。

(0-9) 匹配 '0-9′ 本身。 [0-9]* 匹配數字(注意後面有 *,可以爲空)[0-9]+ 匹配數字(注意後面有 +,不可以爲空){1-9} 寫法錯誤。

[0-9]{0,9} 表示長度爲 0 到 9 的數字字符串。


2、關於要匹配的次數

{n}        匹配前面的表達式重複n次,比如: "\w{2}" 相當於 "\w\w"; "a{5}" 相當於 "aaaaa"

{m,n}    匹配前面的表達式至少重複m次,最多重複n次,比如: "ba{1,3}"可以匹配 "ba"或"baa"或"baaa"

{m,}    匹配前面的表達式至少重複m次,比如: "\w\d{2,}"可以匹配 "a12","_456","M12344"...

       匹配前面的表達式重複0次者1次,相當於 {0,1},比如: "a[cd]?"可以匹配 "a","ac","ad"

+        匹配前面的表達式至少出現1次,相當於 {1,},比如: "a+b"可以匹配 "ab","aab","aaab"...

       匹配前面的表達式不出現或出現任意次(含0次),相當於 {0,},比如: "\^*b"可以匹配 "b","^^^b"...


3、匹配什麼類型的字符

\d    任意一個數字,0~9 中的任意一個

\w    任意一個字母數字下劃線,也就是 A~Z,a~z,0~9,_ 中任意一個

\s    包括空格、製表符、換頁符等空白字符的其中任意一個

.    小數點可以匹配除了換行符(\n)以外的任意一個字符


4、字符串的開頭,結尾及單詞邊界

   匹配與字符串開始的地方,不匹配任何字符

   匹配與字符串結束的地方,不匹配任何字符

\b    匹配一個單詞邊界,也就是單詞和空格之間的位置,不匹配任何字符


([\\s\\S]*)    匹配包括換行符在內的任意字符,  ([\d\D]*) 和 ([\w\W]*)可以實現

/[ -~]/    匹配所有的英文

/[^ -~]/    匹配所有的非英文(比如中文)

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