php replace函數(shù)用于執(zhí)行一個(gè)正則表達(dá)式的搜索和替換,其使用語法是“mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject…”。
本文操作環(huán)境:windows7系統(tǒng)、PHP7.1版,DELL G3電腦
php replace正則替換方法
preg_replace 函數(shù)執(zhí)行一個(gè)正則表達(dá)式的搜索和替換。
語法
mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )
搜索 subject 中匹配 pattern 的部分, 以 replacement 進(jìn)行替換。
參數(shù)說明:
$pattern: 要搜索的模式,可以是字符串或一個(gè)字符串?dāng)?shù)組。
$replacement: 用于替換的字符串或字符串?dāng)?shù)組。
$subject: 要搜索替換的目標(biāo)字符串或字符串?dāng)?shù)組。
$limit: 可選,對(duì)于每個(gè)模式用于每個(gè) subject 字符串的最大可替換次數(shù)。 默認(rèn)是-1(無限制)。
$count: 可選,為替換執(zhí)行的次數(shù)。
返回值
如果 subject 是一個(gè)數(shù)組, preg_replace() 返回一個(gè)數(shù)組, 其他情況下返回一個(gè)字符串。
如果匹配被查找到,替換后的 subject 被返回,其他情況下 返回沒有改變的 subject。如果發(fā)生錯(cuò)誤,返回 NULL。
實(shí)例
將 google 替換為 runoob
<?php $string = 'google 123, 456'; $pattern = '/(w+) (d+), (d+)/i'; $replacement = 'runoob ${2},$3'; echo preg_replace($pattern, $replacement, $string); ?>
執(zhí)行結(jié)果如下所示:
runoob 123,456
刪除空格字符
<?php $str = 'runo o b'; $str = preg_replace('/s+/', '', $str); // 將會(huì)改變?yōu)?#39;runoob' echo $str; ?>
執(zhí)行結(jié)果如下所示:
runoob
使用基于數(shù)組索引的搜索替換
<?php $string = 'The quick brown fox jumped over the lazy dog.'; $patterns = array(); $patterns[0] = '/quick/'; $patterns[1] = '/brown/'; $patterns[2] = '/fox/'; $replacements = array(); $replacements[2] = 'bear'; $replacements[1] = 'black'; $replacements[0] = 'slow'; echo preg_replace($patterns, $replacements, $string); ?>
執(zhí)行結(jié)果如下所示:
The bear black slow jumped over the lazy dog.
使用參數(shù) count
<?php $count = 0; echo preg_replace(array('/d/', '/s/'), '*', 'xp 4 to', -1 , $count); echo $count; //3 ?>
執(zhí)行結(jié)果如下所示:
xp***to 3
推薦學(xué)習(xí):《PHP視頻教程》