一个ubbcode的函数,速度很快.
【字号:
大 中 小】
日期:2023-10-30 10:28:57浏览:126作者:馨心
前面见到有人发表 但是速度比较慢,也非常长 这里给出一种 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]]','<h1>2</h1>',$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; };