php正規表示式

2021-07-11 20:06:56 字數 2619 閱讀 8295

php中preg_match正則匹配的開關項

/u表示按unicode(utf-8)匹配,主要針對多位元組比如漢字

/i表示不區分大小寫

/s表示將字串視為單行來處理

intpreg_match_all( string$pattern, string$subject[, array&$matches[, int$flags=preg_pattern_order

[, int$offset= 0

]]] )

引數:pattern要搜尋的模式,字串形式

subject輸入字串

matches多維陣列,作為輸出引數輸出所有匹配結果,陣列排序通過flags指定

返回值:返回完整匹配次數(可能是0),或者如果發生錯誤返回false

結果排序為 $matches[0]儲存完整模式的所有匹配,$matches[1]儲存第乙個子組的所有匹配,依次類推。

'; $pattern='/]+>(.*)]+>/u';//需加轉義符號\/

preg_match_all($pattern,$str,$matches);

dd($matches);

結果同上

$str='example:this is a test

'; $pattern='/]+>(.*)]+>/';//需加轉義符號\/

preg_match_all($pattern,$str,$matches);

dd($matches);

注意:沒有/u

替換匹配正規表示式的子串

替換匹配正規表示式的子串,使用preg_replace()替換,並沒有實現要想的效果,我就試著用preg_split()先用正規表示式進行分割,然後再進行拼接實現。

$str='為降低大城市震後救災活動強度,應採取的主要防災減災措施包括__完善城市功能區劃 

調整產業結構

人口外遷

'; $pattern='/]+>(.*)/u';

preg_match_all($pattern,$str,$matches);

//dd($matches);

$arr_split=preg_split($pattern,$str);

dd($arr_split);

被正規表示式分割之後的子串:

匹配正規表示式的子串

拼接字串

$str='為降低大城市震後救災活動強度,應採取的主要防災減災措施包括__完善城市功能區劃 

調整產業結構

人口外遷

'; $pattern='/]+>(.*)/u';

preg_match_all($pattern,$str,$matches);

// dd($matches);

$arr_split=preg_split($pattern,$str);

// dd($arr_split);

$arr_mark=array();

$arr_mark[0]="①";

$arr_mark[1]="②";

$arr_mark[2]="③";

$arr_mark[3]="④";

$arr_mark[4]="⑤";

$arr_mark[5]="⑥";

$arr_mark[6]="⑦";

$arr_mark[7]="⑧";

$arr_mark[8]="⑨";

$count=count($matches[1]);

$str_new="";

for($i=0;$i

$str_new.=$arr_split[$count];

echo $str_new;

dd($str_new);

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.更多策劃中 投稿,完善本系列,讓...