/*
正则表达式 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>';