一个ubbcode的函数,速度很快.

发表于:2007-07-01来源:作者:点击数: 标签:
前面见到有人发表 但是速度比较慢,也非常长 这里给出一种 function ubb($str) { $color=Array(@#red@#,@#blue@#,@#green@#); $str=eregi_replace(@#[url]([a-zA-Z0-9@:%_.~#-?]+)[/url]@#,@#a href=http://\1\1/a@#,$str);//url $str=eregi_replace(@#[url=
前面见到有人发表
但是速度比较慢,也非常长
这里给出一种

function ubb($str) {  
$color=Array(@#red@#,@#blue@#,@#green@#);
$str=eregi_replace(@#[url]([a-zA-Z0-9@:%_.~#-?&]+)[/url]@#,@#<a href=http://\1>\1</a>@#,$str);//url
$str=eregi_replace(@#[url=http://([a-zA-Z0-9@:%_.~#-?&]+)](.+)[/url]@#,@#<a href=\1 target=_blank>\2</a>@#,$str);
$str=eregi_replace(@#[url=([a-zA-Z0-9@:%_.~#-?&]+)](.+)[/url]@#,@#<a href=http://\1 target=_blank>\2</a>@#,$str);
$str=eregi_replace(@#[img]([a-zA-Z0-9@:%_.~#-?&]+)[/img]@#,@#<img src=http://\1>\1</img>@#,$str);//img
$str=eregi_replace(@#[h([1-6])](.+)[/h[1-6]]@#,@#<h\1>\2</h\1>@#,$str);//h1-6
$str=eregi_replace(@#[email]([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})[/email]@#,@#<a href=mailto:\1>\1</a>@#,$str);//email
$str=eregi_replace(@#[email=([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})](.+)[/email]@#,@#<a href=mailto:\1>\2</a>@#,$str);
$str=eregi_replace(@#[b](.+)[/b]@#,@#<b>\1</b>@#,$str);
$str=eregi_replace(@#[i](.+)[/i]@#,@#<i>\1</i>@#,$str);
$str=eregi_replace(@#[size=(.+)](.+)[/size]@#,@#<font size=\1>\2</font>@#,$str);
$str=eregi_replace(@#[color=(.+)](.+)[/color]@#,@#<font color=\1>\2</font>@#,$str);
$str=eregi_replace(@#[sub](.+)[/sub]@#,@#<sub>\1</sup>@#,$str);//下裱
$str=eregi_replace(@#[sup](.+)[/sup]@#,@#<sup>\1</sup>@#,$str);//上标
for($i=0;$i<=count($color);$i++)$str=eregi_replace(@#[@#.$color[$i].@#](.+)[/@#.$color[$i].@#]@#,@#<font color=@#.$color[$i].@#>\1</font>@#,$str);
$str=preg_replace("/[quote](.+?)[/quote]/is","<blockquote><font size=@#1@# face=@#Courier New@#>quote:</font><hr>\1<hr></blockquote>", $str);
$str=preg_replace("/[code](.+?)[/code]/is","<blockquote><font size=@#1@# face=@#Times New Roman@#>code:</font><hr color=@#lightblue@#><i>\1</i><hr color=@#lightblue@#></blockquote>", $str);
$str=preg_replace("/[sig](.+?)[/sig]/is","<div style=@#text-align: left;color: darkgreen;margin-left: 5%@#><br><br>--------------------------<br>\1<br>--------------------------</div>", $str);
return $str;

原文转自:http://www.ltesting.net