求一段 PHP 正则表达式 3Q!!!

求一段PHP正则表达式3Q!!!最近自己小编了一个PHP的文章系统。遇到了正则表达式的问题,找了教程,怎么弄也弄不懂,求助1.UBB中[img][/img]转<img/>... 求一段 PHP 正则表达式 3Q!!!

最近自己小编了一个PHP的文章系统。遇到了 正则表达式的问题,找了教程,怎么弄也弄不懂
,求助

1. UBB中 [img][/img]转<img/>的正则表达式

2.模板中 {$title} ,{$content} 转化为变量的 $title , $content(可能还有好多标签,所以用查找匹配来做,如果用 str_replace的话,太浪费资源了)

用PHP正则表达式
希望不要用str_replace函数的

知道的教一下!谢谢!!!
答得好再送分!!
展开
 我来答
zpgm
2007-08-21 · TA获得超过275个赞
知道小有建树答主
回答量:211
采纳率:0%
帮助的人:157万
展开全部
$pattern = "/\[img\]\s*(\S+?)\s*\[\/img\]/is",
$replacement = "<img src=\\1 border=0 /></a>",

$content = preg_replace($pattern,$replacement,$content);

这个只是单个的替换,下面是一次性替换多个的:
$pattern = array(
"/\[size=([^\[]*)\](.+?)\[\/size\]/is",
"/\[font=([^\[]*)\](.+?)\[\/font\]/is",
"/\[color=([#0-9a-z]{1,10})\](.+?)\[\/color\]/is",
"/\[email=([^\[]*)\](.+?)\[\/email\]/is",
"/\[email\]([^\[]*)\[\/email\]/is",
"/\[url=([^\[]*)\](.+?)\[\/url\]/is",
"/\[url\]www\.([^\[]*)\[\/url\]/is",
"/\[url\]([^\[]*)\[\/url\]/is",
"/\[quote\]\s*(.*?)\s*\[\/quote\]/is",
"/(\[fly\])(.+?)(\[\/fly\])/is",
"/(\[move\])(.+?)(\[\/move\])/is",
"/(\[align=)(left|center|right)(\])(.+?)(\[\/align\])/is",
"/(\[shadow=)(\S+?)(\,)(.+?)(\,)(.+?)(\])(.+?)(\[\/shadow\])/is",
"/(\[glow=)(\S+?)(\,)(.+?)(\,)(.+?)(\])(.+?)(\[\/glow\])/is",
"/\[code\](.+?)\[\/code\]/eis",
"/\[img\]\s*(\S+?)\s*\[\/img\]/is",
"/(\[flash=)(\S+?)(\,)(\S+?)(\])(\S+?)(\[\/flash\])/is",
"/\[wmv\]\s*(\S+?)\s*\[\/wmv\]/is",
"/\[rm\]\s*(\S+?)\s*\[\/rm\]/is",
"/\[codes=html\](.*)\[\/codes\]/eis"
);
$replacement = array(
"<font size=\"\\1\">\\2</font>",
"<font face=\"\\1\">\\2</font>",
"<font color=\"\\1\">\\2</font>",
"<a href=\"mailto:\\1\">\\2</a>",
"<a href=\"mailto:\\1\">\\1</a>",
"<a href=\"\\1\" target=_blank>\\2</a>",
"<a href=\"\\1\" target=_blank>\\1</a>",
"<a href=\"\\1\" target=_blank>\\1</a>",
"<table cellpadding=0 cellspacing=0 border=0 WIDTH=95% bgcolor=#000000 align=center><tr><td><table width=100% cellpadding=5 cellspacing=1 border=0><TR><TD BGCOLOR=#ffffff>以下是引用内容:<br>\\1</table></table>",
"<marquee width=90% behavior=alternate scrollamount=3>\\2</marquee>",
"<MARQUEE scrollamount=3>\\2</MARQUEE>",
"<DIV Align=\\2>\\4</DIV>",
"<table width=\\2 style=\"filter:shadow(color=\\4, direction=\\6 ,strength=2)\">\\8</table>",
"<table width=\\2 style=\"filter:glow(color=\\4, strength=\\6)\">\\8</table>",
"'<table border=0 width=95% cellspacing=1 cellpadding=10 bgcolor=#000000 align=center><tr><td width=100% bgcolor=#e6e6e6>'.html2specialchars('\\1').'</td></tr></table>'",
"<a href=\\1 target=_blank><img src=\\1 border=0 onload=\"javascript:if(this.width>screen.width*0.5) this.width=screen.width*0.5;\" alt=\"如果图片缩小请点击放大\" /></a>",
"<OBJECT CLASSID=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" WIDTH=\\2 HEIGHT=\\4><PARAM NAME=MOVIE VALUE=\\6><PARAM NAME=PLAY VALUE=TRUE><PARAM NAME=LOOP VALUE=TRUE><PARAM NAME=QUALITY VALUE=HIGH><EMBED SRC=\\6 WIDTH=\\2 HEIGHT=\\4 PLAY=TRUE LOOP=TRUE QUALITY=HIGH></EMBED></OBJECT><br />[<a target=_blank href=\\6>Full Screen</a>]",
"<EMBED src=\\1 HEIGHT=\"256\" WIDTH=\"314\" AutoStart=1></EMBED>",
"<object classid=clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA height=241 id=Player width=316 VIEWASTEXT><param name=\"_ExtentX\" value=\"12726\"><param name=\"_ExtentY\" value=\"8520\"><param name=\"AUTOSTART\" value=\"0\"><param name=\"SHUFFLE\" value=\"0\"><param name=\"PREFETCH\" value=\"0\"><param name=\"NOLABELS\" value=\"0\"><param name=\"CONTROLS\" value=\"ImageWindow\"><param name=\"CONSOLE\" value=\"_master\"><param name=\"LOOP\" value=\"0\"><param name=\"NUMLOOP\" value=\"0\"><param name=\"CENTER\" value=\"0\"><param name=\"MAINTAINASPECT\" value=\"\\1\"><param name=\"BACKGROUNDCOLOR\" value=\"#000000\"></object><br><object classid=clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA height=32 id=Player width=316 VIEWASTEXT><param name=\"_ExtentX\" value=\"18256\"><param name=\"_ExtentY\" value=\"794\"><param name=\"AUTOSTART\" value=\"1\"><param name=\"SHUFFLE\" value=\"0\"><param name=\"PREFETCH\" value=\"0\"><param name=\"NOLABELS\" value=\"0\"><param name=\"CONTROLS\" value=\"controlpanel\"><param name=\"CONSOLE\" value=\"_master\"><param name=\"LOOP\" value=\"0\"><param name=\"NUMLOOP\" value=\"0\"><param name=\"CENTER\" value=\"0\"><param name=\"MAINTAINASPECT\" value=\"0\"><param name=\"BACKGROUNDCOLOR\" value=\"#000000\"><param name=\"SRC\" value=\"\\1\"></object>",
"'<SCRIPT>function Preview(obj){\n var TestWin=open(\'\');\n TestWin.document.write(obj.value); \n}\nfunction copyCode(obj) { \n var rng = document.body.createTextRange(); \n rng.moveToElementText(obj); \n rng.scrollIntoView(); \n rng.select(); \n rng.execCommand(\'Copy\'); \n rng.collapse(false); \n}\nfunction saveCode(obj) { \n var winname = window.open(\'\', \'_blank\', \'top=10000\'); \n winname.document.open(\'text/html\', \'replace\');
winname.document.writeln(obj.value);
winname.document.execCommand(\'saveas\',\'\',\'rocsky.net.htm\');
winname.close();
}
</SCRIPT>\n <TEXTAREA id=code style=\"WIDTH: 570px; HEIGHT: 244px\" rows=15 cols=47>'.br2ln('\\1').'</textarea><BR><BUTTON onclick=Preview(code)>运行代码</BUTTON><BUTTON onclick=copyCode(code)>复制代码</BUTTON><BUTTON onclick=saveCode(code)>另存代码</BUTTON> ——您可以运行代码察看特效,您也可以复制或者另存源代码。本代码由<a href=\'http://www.rocsky.net/\' target=\'_blank\'>大鹏天空</a>提供。'"
);
$content= preg_replace($pattern,$replacement,$content);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式