PHP preg_replace 函式基本語法
preg_replace ( $pattern , $replacement , $subject , $limit = -1 , $count )
搜尋 $subject 的內容並找出 $pattern 的部分,用 $replacement 取代,其中 $subject 可以是 array 或字串,$limit 是 PHP 4.0.2 增加的新功能,屬於選填項目,指的是最大的取代次數,預設值為 -1,代表無限次,最後一個參數 $count 是 PHP 5.1.0 增加的新功能,也是選填項目,如果有指定,則會被填充為完成的取代次數。
如果 $subject 是一個 array,preg_replace 處理完後返回一個 array,如果 $subject 是一個字串,則反回處理完成的字串。假設沒有搜尋比對出 $pattern,就會直接將 $subject 返回,如果在處理的過程有錯誤的情況發生,則 preg_replace 會返回 NULL。
PHP preg_replace 函式範例一、替換英文單字
<?php
$subject="Good morning Mr Smith.";
$pattern='morning';
$replacement='night';
echo preg_replace("/($pattern)/i",$replacement,$subject);
?>
以上輸出結果:Good night Mr Smith.$subject="Good morning Mr Smith.";
$pattern='morning';
$replacement='night';
echo preg_replace("/($pattern)/i",$replacement,$subject);
?>
我們透過 PHP preg_replace 函式,成功將 morning 搜尋出來,並取代為 night。
PHP preg_replace 函式範例二、移除空格
<?php
$subject="Good morning Mr Smith.";
$pattern='/\s/';
$replacement='';
echo preg_replace("/($pattern)/i",$replacement,$subject);
?>
以上輸出結果:GoodnightMrSmith.$subject="Good morning Mr Smith.";
$pattern='/\s/';
$replacement='';
echo preg_replace("/($pattern)/i",$replacement,$subject);
?>
$parttern 的 '/\s/' 正規表示會將 $subject 字串中的空格找出來,$replacement 我們給空值,經過 preg_replace 處理後,字串的空格就不見囉!另外常見的處理錯誤原因可能是 $pattern 或 $replacement 中有引號,可以用 addslashes 先處理過。
推薦給您的相關主題