1: \b是正規表示式規定的乙個元字元,代表著單詞的開頭或結尾,也就是單詞的分界處。如果要精確地查詢hi這個單詞的話,我們應該使用\bhi\b
2:.是另乙個元字元,匹配除了換行符以外的任意字元
3:*同樣是元字元,它代表的不是字元,也不是位置,而是數量——它指定*前邊的內容可以連續重複使用任意次以使整個表示式得到匹配。因此,./連在一起就意味著任意數量的不包含換行的字元,hi後面不遠處跟著乙個lucy,你應該用\bhi\b.\blucy\b
4:\d是個新的元字元,匹配一位數字(0,或1,或2,或……)
5:-不是元字元,只匹配它本身——連字元(或者減號,或者中橫線,或者隨你怎麼稱呼它),0\d\d-\d\d\d\d\d\d\d\d匹配這樣的字串:以0開頭,然後是兩個數字,然後是乙個連字型大小「-」,最後是8個數字,我們也可以這樣寫這個表示式:0\d-\d
6:元字元歸納
. 匹配除換行符以外的任意字元
\w 匹配字母或數字或下劃線或漢字
\s 匹配任意的空白符
\d 匹配數字
\b 匹配單詞的開始或結束
^ 匹配字串的開始
$ 匹配字串的結束
* 指定前面的字元任意匹配以匹配表示式
7:字元轉義:查詢元字元本身,在元字元前面加 \ 即可,如:
\. 指 .
\* 指 *
\\ 指 \
8: 重複
** 說明
* 重複零次或更多次
+ 重複一次或更多次
? 重複零次或一次
重複n次
重複n次或更多次
重複n到m次
9:: 查詢未定義的元字元如:a,e,i,o,u.用方括號列出即可。
如: * [aeiou]就匹配任何乙個英文母音字母
* [.?!]匹配標點符號(.或?或!)
* [0-9]等同於\d,匹配數字
* [a-z0-9a-z_]等同於\w(如果只考慮英文)
例:(?0\d[) -]?\d :這個表示式可以匹配幾種格式的**號碼,像(010)88886666,或022-22334455,或02912345678等。首先是乙個轉義字元(,它能出現0次或1次(?),然後是乙個0,後面跟著2個數字(\d),然後是)或-或空格中的乙個,它出現1次或不出現(?),最後是8個數字(\d)。
正規表示式30分鐘入門鏈結
正規表示式30分鐘入門教程
30分鐘內讓你明白正規表示式是什麼,並對它有一些基本的了解,讓你可以在自己的程式或網頁裡使用它。最重要的是 請給我30分鐘,如果你沒有使用正規表示式的經驗,請不要試圖在30秒內入門 除非你是超人 別被下面那些複雜的表示式嚇倒,只要跟著我一步一步來,你會發現正規表示式其實並沒有你 想像中的那麼困難。當...
正規表示式30分鐘入門教程 2
有時需要查詢不屬於某個能簡單定義的字元類的字元。比如想查詢除了數字以外,其它任意字元都行的情況,這時需要用到反義 表3.常用的反義 語法 說明 w 匹配任意不是字母,數字,下劃線,漢字的字元 s 匹配任意不是空白符的字元 d 匹配任意非數字的字元 b 匹配不是單詞開頭或結束的位置 x 匹配除了x以外...
PHP正規表示式30分鐘入門教程
正規表示式30分鐘入門教程 三個常用的知識點 1 惰性匹配 正則引擎預設是貪婪的,若要最少重複的話,需要用到惰性匹配符 懶惰限定符 語法 說明 重複任意次,但盡可能少重複 重複1次或更多次,但盡可能少重複 重複0次或1次,但盡可能少重複 重複n到m次,但盡可能少重複 重複n次以上,但盡可能少重複 參...