>  기사  >  백엔드 개발  >  解读PHP函数preg_replace()的数组替换代码示例_PHP教程

解读PHP函数preg_replace()的数组替换代码示例_PHP教程

WBOY
WBOY원래의
2016-07-15 13:31:06840검색

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 数组替换

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span> ?php  </span></span></span></li>
<li><span>//字符串  </span></li>
<li class="alt">
<span>$</span><span class="attribute">string</span><span> = </span><span class="attribute-value">"Name: {Name}nEmail: <br>{Email}nAddress: {Address}n"</span><span>;  </span>
</li>
<li><span>//模式  </span></li>
<li class="alt">
<span>$</span><span class="attribute">patterns</span><span> =</span><span class="attribute-value">array</span><span>(  </span>
</li>
<li><span>"/{Address}/",  </span></li>
<li class="alt"><span>"/{Name}/",  </span></li>
<li><span>"/{Email}/"  </span></li>
<li class="alt"><span>);  </span></li>
<li><span>//替换字串  </span></li>
<li class="alt">
<span>$</span><span class="attribute">replacements</span><span> = </span><span class="attribute-value">array</span><span> (  </span>
</li>
<li><span>"No.5, Wilson St., New York, U.S.A",  </span></li>
<li class="alt"><span>"Thomas Ching",  </span></li>
<li><span>"tom@emailaddress.com",  </span></li>
<li class="alt"><span>);  </span></li>
<li><span>//输出模式替换结果  </span></li>
<li class="alt"><span>print preg_replace($patterns, <br>$replacements, $string);  </span></li>
<li>
<span class="tag">?></span><span> </span>
</li>
</ol>

输出结果如下。

Name: Thomas Ching",
Email: tom@emailaddress.com
Address: No.5, Wilson St., New York, U.S.A
在preg_replace的正则表达式中可以使用模式修正符“e”。其作用是将匹配结果用作表达式,并且可以进行重新运算。例如:

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span> ?php  </span></span></span></li>
<li>
<span>$</span><span class="attribute">html_body</span><span> = </span>
</li>
<li>
<span>“</span><span class="tag"><span> </span><span class="tag-name">HTML</span><span class="tag">></span></span>
</li>
<li><span class="tag"><span> </span><span class="tag-name">Body</span><span class="tag">></span></span></li>
<li><span class="tag"><span> </span><span class="tag-name">H1</span><span class="tag">></span><span>TEST</span><span class="tag"><span> /H1</span><span class="tag">></span></span></span></li>
<li>
<span>My Picture</span><span class="tag"><span class="tag-name">Img</span><span> </span><span class="attribute">src</span><span>=”my.gif”</span><span class="tag">></span></span>
</li>
<li><span class="tag"><span> /Body</span><span class="tag">></span></span></li>
<li><span class="tag"><span> /HTML</span><span class="tag">></span><span>”;  </span></span></li>
<li class="alt"><span>//输出结果中HTML标签将全部为小写字母  </span></li>
<li><span>echo preg_replace (  </span></li>
<li class="alt">
<span>"/(</span><span class="tag"><span> /?)(w+)([^</span><span class="tag">></span><span>]*</span><span class="tag">></span><span>)/e",   </span></span>
</li>
<li><span>"'\1'.strtolower('\2').'\3'", //此处的模式变量 <br>\2将被strtolower转换为小写字符  </span></li>
<li class="alt"><span>$html_body);  </span></li>
<li>
<span class="tag">?></span><span> </span>
</li>
</ol>

以上就是PHP函数preg_replace()的具体使用方法介绍,希望对大家有所帮助。


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446246.htmlTechArticlePHP函数preg_replace()原型:mixed preg_replace (mixed $pattern, mixed $replacement, mixed $subject [, int $limit]) PHP函数preg_replace()较c的功能更加强大。其前三个...
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.