php正規表示式及其函式

2021-07-04 07:22:52 字數 2517 閱讀 1102

1. 『^』和 $』 表示用來匹配字串的開始和結束。(^有兩種用法,下一種,見下面)

2. 『*』表示0次或者多次,『+』表示1次或多次,『?』表示0次或1次

3. 大括號裡面控制字元出現的個數

4.字元 『│』, 相當於or 操作

5.乙個點』.』可以代表除換行符之外的任意單個字元,中括號括住的內容只匹配乙個單一的字元

如果需要匹配包含換行符在內的任意字元

"([

\s\s

]*)" 或"([

\d\d

]*)" 或"([

\w\w

]*)" 來表示。

6.[^x]:匹配除了 x 意外的任意字元

7.常用的元字元

$str="hi history";

preg_match_all("/\bhi\b/",$str,$arr);

preg_match_all("/hi/",$str,$arr1);

var_dump($arr);

var_dump($arr1);

輸出為:

array(1) 

}array(1)

}

即」\b」只匹配單個的單詞

8.正規表示式中需要轉義的特殊字元:

* . ? + $ ^ [ ] ( )  | \ / " "
如[,如果需要轉義使用\[;

下面的**是關於\[的使用**:

$str="[123]";

preg_match_all("/\[([^\]]*)\]/",$str,$arr);//更簡單的正則式為

"/\[(.*)\[/"

var_dump($arr);

輸出為

array(2) 

[1]=>

array(1)

}

9.preg_match()函式:

函式原型:

int preg_match( string pattern, string subject [, array matches ] )成功返回 1 ,否則返回 0 。

引數:

例如:

$str=" aabab ";

preg_match("/a.*?b/",$str,$arr);

var_dump($arr);

輸出為

array(1)
10.preg_match_all()函式:

函式原型:

int preg_match_all( string pattern, string subject, array matches [, int flags ] )

成功返回整個模式匹配的次數(可能為零),如果出錯返回 false 。

引數:

$str=" abcde

fghij

";preg_match_all("/(.*?)/",$str,$arr);

var_dump($arr);

array(2) 

[1]=>

array(2)

}

11.模式修正符的使用

如字串aabab:

13.向後引用

定義:當用「()」定義了乙個正規表示式組後,正則引擎則會把被匹配的組按照順序編號,存入快取。當對被匹配的組進行向後引用的時候,可以用「\數字」的方式進行引用。」\1「引用第乙個匹配的後向引用組,」\2」引用第二個組,以此類推,」\n」引用第n個組。而」\0」則引用整個被匹配的正規表示式本身。我們看乙個例子。

假設你想匹配乙個html標籤的開始標籤和結束標籤,以及標籤中間的文字。例如

this is a testb>
則pattern為

.*
14.常用正規表示式

2.url:^[a-za-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\s*)?$手機號碼:^((\(\d\))|(\d\-))?13\d$匹配html標記:.*|提取資訊中的中國手機號碼:(86)*0*13\d提取資訊中的中國固定**號碼:(\(\d\)|\d-|\s)?\d千里碼的一道題:寫乙個正規表示式來匹配這些符合要求的身份證號(出生年份在1985-1995的男性使用者):^[\d]19(8[5-9]|9[0-5])[\d][013579][0-9xx]$

PHP正規表示式函式

關於正規表示式 regular expression 似乎譯成 字串解析處理,較合乎字面上的意義。但目前所有的相關書籍都譯成正規表示式或是正規表示法.等等,實際上是負責字串解析比對,並對字串做相關的處理。ereg 字串比對解析。ereg replace 字串比對解析並取代。eregi 字串比對解析,...

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

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

正規表示式一 php常用正規表示式匹配函式

注 pattren 正規表示式 subject 匹配的目標資料 注 1 pre match只匹配一次,而pre match all匹配所有的 2 前者是一維陣列,而後者是二維陣列 3 函式返回值對應匹配次數 注 1 兩者支援陣列匹配替換,即 pattern,replacement,subject均可...