<p>preg_replace 函数执行一个正则表达式的搜索和替换。</p><p>语法</p><p>mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &amp;$count ]] )</p><p>搜索 subject 中匹配 pattern 的部分, 以 replacement 进行替换。</p><p>参数说明:</p><p>$pattern: 要搜索的模式,可以是字符串或一个字符串数组。</p><p>$replacement: 用于替换的字符串或字符串数组。</p><p>$subject: 要搜索替换的目标字符串或字符串数组。</p><p>$limit: 可选,对于每个模式用于每个 subject 字符串的最大可替换次数。 默认是-1(无限制)。</p><p>$count: 可选,为替换执行的次数。</p><p>返回值</p><p>如果 subject 是一个数组, preg_replace() 返回一个数组, 其他情况下返回一个字符串。</p><p>如果匹配被查找到,替换后的 subject 被返回,其他情况下 返回没有改变的 subject。如果发生错误,返回 NULL。</p><p>实例</p><p>将 google 替换为 runoob</p><pre class="brush:php;toolbar:false">&lt;?php $string=&#39;google123,456&#39;; $pattern=&#39;/(\w+)(\d+),(\d+)/i&#39;; $replacement=&#39;runoob${2},$3&#39;; echopreg_replace($pattern,$replacement,$string); ?&gt;</pre><p>执行结果如下所示:</p><p>runoob 123,456</p><p>删除空格字符</p><pre class="brush:php;toolbar:false">&lt;?php $str=&#39;runoob&#39;; $str=preg_replace(&#39;/\s+/&#39;,&#39;&#39;,$str); //将会改变为&#39;runoob&#39; echo$str; ?&gt;</pre><p>执行结果如下所示:</p><p>runoob</p><p>使用基于数组索引的搜索替换</p><pre class="brush:php;toolbar:false">&lt;?php $string=&#39;Thequickbrownfoxjumpedoverthelazydog.&#39;; $patterns=array(); $patterns[0]=&#39;/quick/&#39;; $patterns[1]=&#39;/brown/&#39;; $patterns[2]=&#39;/fox/&#39;; $replacements=array(); $replacements[2]=&#39;bear&#39;; $replacements[1]=&#39;black&#39;; $replacements[0]=&#39;slow&#39;; echopreg_replace($patterns,$replacements,$string); ?&gt;</pre><p>执行结果如下所示:</p><p>The bear black slow jumped over the lazy dog.</p><p>使用参数 count</p><pre class="brush:php;toolbar:false">&lt;?php $count=0; echopreg_replace(array(&#39;/\d/&#39;,&#39;/\s/&#39;),&#39;*&#39;,&#39;xp4to&#39;,-1,$count); echo$count;//3 ?&gt;</pre><p>执行结果如下所示:</p><p>xp***to</p><p>3</p>
T:0.006977s,M:206.05 KB
返回顶部 留言