PHP字符串的替换(preg_replace)

/*

正则表达式  preg_replace()

*/

$str = array(
"如果没有一些http://www.abc.com特殊的<b>替换</b>需5求(<u>比如正则表达式</u>),你应http://www.bcd.net该使用该http://bbs.brophp.org函数替9换 <font color='red'>ereg_replace()</font> 和9 preg_replace()。 ",
"如果没有一些http://www.abc.com特殊的<b>替换</b>需5求(<u>比如正则表达式</u>),你应http://www.bcd.net该使用该http://bbs.brophp.org函数替9换 <font color='red'>ereg_replace()</font> 和9 preg_replace()。 ",




);

$reg = array(
//所有HTML
'/\<[\/\!]*?[^\<\>]+?\>/is',
//所有URL
//e模式,先执行函数再执行替换,需先将函数变成字符串
'/(https?|ftps?):\/\/(www|mail|bbs|ftp)\.(.*?)\.(net|com|org|cn)([\w-\.\/\=\?\&\%]*)?/e',
//所有数字
'/\d/'
);

$rep = array(
'',
//将匹配的子模式放到字符串中使用
//strtoupper匹配出来的内容转成大写
'"<a href=\'$1://$2.$3.$4\'>".strtoupper("$1://$2.$3.$4")."</a>"',
'@'
);

//替换有顺序要求,$reg[0]对应$rep[0]
$newstr = preg_replace($reg, $rep, $str);

echo '<pre>';
print_r($str)."<br>";
print_r($newstr)."<br>";
echo '</pre>';

posted on 2016-03-19 10:36  奋斗的寒霜  阅读(733)  评论(0编辑  收藏  举报