PHP正規表示式e模式

2021-06-12 21:24:47 字數 853 閱讀 1980

舉例如下:

$arr =array( 'abc', 'def', 'ghi' );

$brr =array( 'opq', 'rst', 'xyz' );

$pattern= '/:(\d+)/e';

$subject= '/:2/:1/:0/';

$str =preg_replace( $pattern, '$arr[$1] . $brr[$1]',$subject );

echo $str; //輸出為: /ghixyz/defrst/abcopq/

e模式, 只限用於preg_replace()函式,

preg_replace( 搜尋模式, 替換字串, 搜尋目標 );

e模式可以把

替換字串(上例中的'$arr[

$1]. $brr[

$1]')

中的內容當成乙個php表示式

(僅僅是乙個, 也就是不能有分號)

(上例中是兩個陣列元素進行字串拼接),

先進行反向引用替換

(上例中的$1, 替換成捕獲到的數字,

結果就是(假設捕獲到了數字2: '$arr[2] . $brr[2]'),

再進行php表示式替換

(把'$arr[2] . $brr[2]'中的陣列元素替換成相應的值,

結果為: 'ghixyz')

最後替換掉 搜尋目標 中相應的字串(此處為把 :2 替換成 'ghixyz')

所以第乙個匹配替換後的結果就是 '/ghixyz/:1/:0/'

第二替換結果是 '/ghixyz/defrst/:0/'

第三也就是最終結果是 '/ghixyz/de

php正規表示式 修正模式

修正模式 是給正規表示式的匹配過程指定一種匹配模式,類似於手機的模式 家庭模式 會議模式等 包含以下這些 貪婪匹配 指的是當匹配結果出現歧義 出現多種結果 的時候,它會選擇結果最長的那個結果 懶惰匹配 u 指的是當匹配結果出現歧義 出現多種結果 的時候,它會選擇結果最短的那個結果 i 忽略正規表示式...

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

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

PHP正規表示式

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