欢迎来到福编程网,本站提供各种互联网专业知识!

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

发布时间:2006-10-09 作者: 来源:转载
前面见到有人发表但是速度比较慢,也非常长这里给出一种functionubb($str){$color=Array('red','blue','green');$str=eregi_replace('\[url\]([a-zA-Z0-9@:%_.~#-\?&]+)\[\/url\]','\\1',$str);//url$str=eregi_replace('\[url=http://([
前面见到有人发表

但是速度比较慢,也非常长

这里给出一种

function ubb($str) {

$color=Array('red','blue','green');

$str=eregi_replace('[url]([a-zA-Z0-9@:%_.~#-?&]+)[/url]','1',$str);//url

$str=eregi_replace('[url=http://([a-zA-Z0-9@:%_.~#-?&]+)](.+)[/url]','2',$str);

$str=eregi_replace('[url=([a-zA-Z0-9@:%_.~#-?&]+)](.+)[/url]','2',$str);

$str=eregi_replace('[img]([a-zA-Z0-9@:%_.~#-?&]+)[/img]','1',$str);//img

$str=eregi_replace('[h([1-6])](.+)[/h[1-6]]','

2

',$str);//h1-6

$str=eregi_replace('[email]([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})[/email]','1',$str);//email

$str=eregi_replace('[email=([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})](.+)[/email]','2',$str);

$str=eregi_replace('[b](.+)[/b]','1',$str);

$str=eregi_replace('[i](.+)[/i]','1',$str);

$str=eregi_replace('[size=(.+)](.+)[/size]','2',$str);

$str=eregi_replace('[color=(.+)](.+)[/color]','2',$str);

$str=eregi_replace('[sub](.+)[/sub]','1',$str);//下裱

$str=eregi_replace('[sup](.+)[/sup]','1',$str);//上标

for($i=0;$i<=count($color);$i++)$str=eregi_replace('['.$color[$i].'](.+)[/'.$color[$i].']','1',$str);

$str=preg_replace("/[quote](.+?)[/quote]/is","

quote:
1
", $str);

$str=preg_replace("/[code](.+?)[/code]/is","

code:
1
", $str);

$str=preg_replace("/[sig](.+?)[/sig]/is","

--------------------------

1

--------------------------

", $str);

return $str;

}

相关推荐