101 php 正規表示式

2021-07-05 21:19:21 字數 1816 閱讀 1105

1.正則歷史

grep -> egrep -> posix (portable operation system inte***ce of vnix )->  perl (practical extraction and reporting language) -> pcre

正規表示式定界符 "/"

2.行定位符( ^ )和 ( $ )

^表示開始,$表示結束

^tm 匹配 tm開頭的字串

tm$ 匹配tm 結束的字串

tm 匹配任意位置

3.單詞定界符 ( \b \b )

\btm\b   匹配包含tm的完整單詞

\btm\b  匹配不是完整單詞且包含tm的字串

4.字元類( [ ] )

正則區分大小寫,如果要忽略大小寫需要加"[ ]",乙個方括號匹配乙個字元

[tt][mm] 匹配不區分大小寫的tm

(posix和pcre略有不同)其他預定義的字元類:

[:digit:]           匹配十進位制數字集合,等同與[0~9]

[[: alnum:]]   匹配字母和數字集合 等同[a-za-z0-0]

[:alpha:]       匹配字母集合 等同[a-za-z]

[:blank:]       匹配空格和製表符

[:xdigit:]       匹配十六進製制數字

[:punct:]       匹配特殊字符集 ~!@#$%等

[:print:]         匹配所有可列印字元 包括空白

[:space:]      匹配空白字元

[:graph:]      匹配所有可列印字元 不包括空白

[:upper:]     [a-z]

[:lower:]      [a-z]

[:cntrl:]        控制字元

注:「 [ ] 」 匹配單字元    「|」 匹配字串 如:

tm|tm|tm|tm

5.連字元(-) 表示字元範圍

[a-z]  

6.排除字元( [^] )

[ ^a-za-z ] 不以字母開頭的變數

7.限定符 (?* + ) 匹配重複出現的字母或者字串

? 匹配前面字元零次或多次       colou?r    匹配colour 或者color

+ 匹配前面的字元一次或多次   go+gle     gogle到gooo...gle

* 匹配前面字元零次或多次       go*gle      ggle到gooo...gle

匹配前面的字元n次             gogle   google

匹配前面的字元至少n次      gogle  google 到 gooo...gle

匹配前面字元最少n 最多m次  employe    emply  emplye  emplyee

8.點號字元(.) 匹配換行之外的任意乙個字元

^ s.t $    匹配s開頭t結尾,中間有乙個字母的單詞

^ s.r*t$    匹配s開頭 t結尾,第三個字母為r的單詞

9.轉義 不可以列印字元(\)

[0,9](\.[0-9])     ip位址

\d 十進位制數

\b 單詞定界符

10.括號 (  ()  )

(thir|four)th    thirth fourth

11.反向引用

([a-z])([a-z])\1\2

(?p[a-z])(?p[a-z])(?p=fir)(?p=sec)    定義並反向引用

12.模式修飾

(?i)忽略大小寫

(?x)忽略空白字元

php正規表示式詳解,PHP正規表示式使用詳解

操作符 描述 轉義符 圓括號和方括號 限定符 anymetacharacter 位置和順序 或 操作 全部符號解釋 字元 描述 將下乙個字元標記為乙個特殊字元 或乙個原義字元 或乙個 向後引用 或乙個八進位制轉義符。例如,n 匹配字元 n n 匹配乙個換行符。序列 匹配 而 則匹配 匹配輸入字串的開...

PHP正規表示式

php正規表示式的定義 用於描述字元排列和匹配模式的一種語法規則。它主要用於字串的模式分割 匹配 查詢及替換操作。php中的正則函式 php中有兩套正則函式,兩者功能差不多,分別為 一套是由pcre perl compatible regular expression 庫提供的。使用 preg 為字...

PHP正規表示式

今天起,會開始弄乙個php教程系列文章.主要是針對正規表示式的.大概的內容排序是這樣安排的 1.php 中的正規表示式 2.八個實用的php正規表示式 3.如何書寫更易閱讀的php正規表示式 4.半小時精通正規表示式 5.正則在文章採集系統中的應用及常見問題答疑 6.更多策劃中 投稿,完善本系列,讓...