PHP函數preg_replace()原型:mixed preg_replace (mixed $pattern, mixed $replacement, mixed $subject [, int $limit])
PHP函數preg_replace()較c的功能更加強大。其前三個參數均可以使用數組;第四個參數$limit可以設置替換的次數,默認為全部替換。代碼6.7是一個數組替換的應用實例。
PHP函數preg_replace()代碼6.7 數組替換
- < ?php
- //字符串
- $string = "Name: {Name}< br>nEmail:
{Email}< br>nAddress: {Address}< br>n";- //模式
- $patterns =array(
- "/{Address}/",
- "/{Name}/",
- "/{Email}/"
- );
- //替換字串
- $replacements = array (
- "No.5, Wilson St., New York, U.S.A",
- "Thomas Ching",
- "[email protected]",
- );
- //輸出模式替換結果
- print preg_replace($patterns,
$replacements, $string);- ?>
輸出結果如下。
Name: Thomas Ching",
Email: [email protected]
Address: No.5, Wilson St., New York, U.S.A
在preg_replace的正則表達式中可以使用模式修正符“e”。其作用是將匹配結果用作表達式,並且可以進行重新運算。例如:
- < ?php
- $html_body =
- “< HTML>
- < Body>
- < H1>TEST< /H1>
- My Picture<Img src=”my.gif”>
- < /Body>
- < /HTML>”;
- //輸出結果中HTML標簽將全部為小寫字母
- echo preg_replace (
- "/(< /?)(w+)([^>]*>)/e",
- "'\1'.strtolower('\2').'\3'", //此處的模式變量
\2將被strtolower轉換為小寫字符- $html_body);
- ?>
以上就是PHP函數preg_replace()的具體使用方法介紹,希望對大家有所幫助。