php正則替換內(nèi)容的方法:1、用preg_replace(),可執(zhí)行正則表達(dá)式的搜索和替換,語(yǔ)法“preg_filter (正則式,替換值,數(shù)據(jù))”;2、用preg_filter(),語(yǔ)法“preg_filter(正則式,替換值,數(shù)據(jù))”。
本教程操作環(huán)境:windows7系統(tǒng)、PHP7.1版、DELL G3電腦
在php中,可以使用下面兩個(gè)函數(shù)來(lái)實(shí)現(xiàn)正則替換內(nèi)容
-
preg_replace():執(zhí)行一個(gè)正則表達(dá)式的搜索和替換
-
preg_filter():執(zhí)行一個(gè)正則表達(dá)式的搜索和替換
1、使用preg_replace()函數(shù)
preg_replace() 函數(shù)可以執(zhí)行正則表達(dá)式的搜索和替換,是一個(gè)強(qiáng)大的字符串替換處理函數(shù)。語(yǔ)法格式:
preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )
搜索 subject 中匹配 pattern 的部分, 以 replacement 進(jìn)行替換。
參數(shù)說(shuō)明:
-
$pattern: 要搜索的模式,可以是字符串或一個(gè)字符串?dāng)?shù)組。
-
$replacement: 用于替換的字符串或字符串?dāng)?shù)組。
-
$subject: 要搜索替換的目標(biāo)字符串或字符串?dāng)?shù)組。
-
$limit: 可選,對(duì)于每個(gè)模式用于每個(gè) subject 字符串的最大可替換次數(shù)。 默認(rèn)是-1(無(wú)限制)。
-
$count: 可選,為替換執(zhí)行的次數(shù)。
返回值
-
如果 subject 是一個(gè)數(shù)組, preg_replace() 返回一個(gè)數(shù)組, 其他情況下返回一個(gè)字符串。
-
如果匹配被查找到,替換后的 subject 被返回,其他情況下 返回沒(méi)有改變的 subject。如果發(fā)生錯(cuò)誤,返回 NULL。
示例1:將 hello 替換為 phpcn
<?php $string = 'hello 123, 456'; $pattern = '/(w+) (d+), (d+)/i'; $replacement = 'phpcn ${2},$3'; echo preg_replace($pattern, $replacement, $string); ?>
示例2:刪除空格字符
<?php header('content-type:text/html;charset=utf-8'); $str = '歡 迎 來(lái) 到 p h p 中 文 網(wǎng)'; $str = preg_replace('/s+/', '', $str); // 將會(huì)改變?yōu)?#39;歡迎來(lái)到php中文網(wǎng)' echo $str; ?>
2、使用preg_filter()函數(shù)
preg_filter() 函數(shù)也用于執(zhí)行一個(gè)正則表達(dá)式的搜索和替換,等價(jià)于preg_replace() 函數(shù);不同的是 preg_filter() 函數(shù)只返回匹配成功的結(jié)果,而 preg_replace() 返回所有結(jié)果,不管是否匹配成功。
示例:比較preg_filter() 和preg_replace()
<?php header('content-type:text/html;charset=utf-8'); $subject = array('1', 'a', '2', 'b', '3', 'A', 'B', '4'); $pattern = array('/d/', '/[a-z]/', '/[1a]/'); $replace = array('A:$0', 'B:$0', 'C:$0'); echo "preg_filter 返回值:"; var_dump(preg_filter($pattern, $replace, $subject)); echo "preg_replace 返回值:"; var_dump(preg_replace($pattern, $replace, $subject)); ?>
推薦學(xué)習(xí):《PHP視頻教程》