很不错的一个UBB代码 |
本文标签:很不错的一个UBB代码 <% Function HTMLEncode(ByVal strValue) 忽略错误 On Error Resume Next 定义变量 Dim strNewValue If strValue <> "" Then strNewValue = Replace(strValue,"<","<") strNewValue = Replace(strNewValue,">",">") strNewValue = Replace(strNewValue,"","'") strNewValue = Replace(strNewValue,"""",""") strNewValue = Replace(strNewValue,vbCrLf,"<br>") strNewValue = Replace(strNewValue," "," ") End If HTMLEncode = strNewValue 输出错误 If Err.Number>0 Then Response.Write Err.Description Response.End End If End Function Function UBBCode(strValue) Dim RegExp strValue=HTMLEncode(strValue) Set RegExp=New RegExp RegExp.IgnoreCase =True RegExp.Global=True If strValue <> "" Then RegExp.Pattern="(\[IMG\])(.[^\[]*)(\[\/IMG\])" strValue=RegExp.Replace(strValue,"<a href=""$2"" target=_blank><IMG SRC=""$2"" border=0 alt=按此在新窗口浏览图片 onload=""javascript:if(this.width>screen.width-333)this.width=screen.width-333""></a>") RegExp.Pattern="(\[FLASH\])(.[^\[]*)(\[\/FLASH\])" strValue=RegExp.Replace(strValue,"<OBJECT codebase=""http://download.macromedia.com/pub/sho ... h/swflash.cab#version=4,0,2,0"" classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000 width=500 height=400 id=ShockwaveFlash1><PARAM NAME=movie VALUE=""$2""><PARAM NAME=quality VALUE=high><embed src=""$2"" quality=high pluginspage=""") target=_blank rel=nofollow>http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"" type=""appl ... 00 height=400></embed></OBJECT>") RegExp.Pattern="(\[ZIP\])(.[^\[]*)(\[\/ZIP\])" strValue=RegExp.Replace(strValue,"<br><a href=""$2"">点击下载该文件</a>") RegExp.Pattern="(\[RAR\])(.[^\[]*)(\[\/RAR\])" strValue=RegExp.Replace(strValue,"<br><a href=""$2"">点击下载该文件</a>") RegExp.Pattern="(\[UPLOAD=(.[^\[]*)\])(.[^\[]*)(\[\/UPLOAD\])" strValue=RegExp.Replace(strValue,"<br><IMG SRC=""$2.gif"" border=0> <A HREF=""$3"" TARGET=_blank>点击查看或下载该文件</A>") strValue=RegExp.Replace(strValue,"<br><IMG SRC=""$2.gif"" border=0>此主题相关图片如下:<br><A HREF=""$3"" TARGET=_blank><IMG SRC=""$3"" border=0 alt=按此在新窗口浏览图片 onload=""javascript:if(this.width>screen.width-333)this.width=screen.width-333""></A>") RegExp.Pattern="(\[URL\])(http:\/\/.[^\[]*)(\[\/URL\])" strValue=RegExp.Replace(strValue,"<A HREF=""$2"" TARGET=_blank>$2</A>") RegExp.Pattern="(\[URL\])(.[^\[]*)(\[\/URL\])" strValue=RegExp.Replace(strValue,"<A HREF=""$2") target=_blank rel=nofollow>http://$2"" TARGET= ... t;/A>") RegExp.Pattern="(\*)\])(.[^\[]*)(\[\/URL\])" strValue=RegExp.Replace(strValue,"<A HREF=""$2"" TARGET=_blank>$3</A>") RegExp.Pattern="(\[URL=(.[^\[]*)\])(.[^\[]*)(\[\/URL\])" strValue=RegExp.Replace(strValue,"<A HREF=""[url]http://$2"" TARGET=_blank>$3</A>") RegExp.Pattern="(\[EMAIL\])(\S+\@.[^\[]*)(\[\/EMAIL\])" strValue=RegExp.Replace(strValue,"<A HREF=""mailto:$2"">$2</A>") RegExp.Pattern="(\[EMAIL=(\S+\@.[^\[]*)\])(.[^\[]*)(\[\/EMAIL\])" strValue=RegExp.Replace(strValue,"<A HREF=""mailto:$2"" TARGET=_blank>$3</A>") RegExp.Pattern = "^(http://[A-Za-z0-9\./=\?%\-&_'`@:+!]+)" strValue=RegExp.Replace(strValue,"<a target=_blank href=$1>$1</a>") RegExp.Pattern = "(http://[A-Za-z0-9\./=\?%\-&_'`@:+!]+)$" strValue=RegExp.Replace(strValue,"<a target=_blank href=$1>$1</a>") RegExp.Pattern = "[^>=""](http://[A-Za-z0-9\./=\?%\-&_'`@:+!]+)" strValue=RegExp.Replace(strValue,"<a target=_blank href=$1>$1</a>") RegExp.Pattern = "^(ftp://[A-Za-z0-9\./=\?%\-&_'`@:+!]+)" strValue=RegExp.Replace(strValue,"<a target=_blank href=$1>$1</a>") RegExp.Pattern = "(ftp://[A-Za-z0-9\./=\?%\-&_'`@:+!]+)$" strValue=RegExp.Replace(strValue,"<a target=_blank href=$1>$1</a>") RegExp.Pattern = "[^>=""](ftp://[A-Za-z0-9\.\/=\?%\-&_'`@:+!]+)" strValue=RegExp.Replace(strValue,"<a target=_blank href=$1>$1</a>") RegExp.Pattern = "^(rtsp://[A-Za-z0-9\./=\?%\-&_'`@:+!]+)" strValue=RegExp.Replace(strValue,"<a target=_blank href=$1>$1</a>") RegExp.Pattern = "(rtsp://[A-Za-z0-9\./=\?%\-&_'`@:+!]+)$" strValue=RegExp.Replace(strValue,"<a target=_blank href=$1>$1</a>") RegExp.Pattern = "[^>=""](rtsp://[A-Za-z0-9\.\/=\?%\-&_'`@:+!]+)" strValue=RegExp.Replace(strValue,"<a target=_blank href=$1>$1</a>") RegExp.Pattern = "^(mms://[A-Za-z0-9\./=\?%\-&_'`@:+!]+)" strValue=RegExp.Replace(strValue,"<a target=_blank href=$1>$1</a>") RegExp.Pattern = "(mms://[A-Za-z0-9\./=\?%\-&_'`@:+!]+)$" strValue=RegExp.Replace(strValue,"<a target=_blank href=$1>$1</a>") RegExp.Pattern = "[^>=""](mms://[A-Za-z0-9\.\/=\?%\-&_'`@:+!]+)" strValue=RegExp.Replace(strValue,"<a target=_blank href=$1>$1</a>") RegExp.Pattern="(\[HTML\])(.[^\[]*)(\[\/HTML\])" strValue=RegExp.Replace(strValue,"<table width=100% border=0 cellspacing=0 cellpadding=6 bgcolor=#FFFFFF><td><b>以下内容为程序代码:</b><br>$2</td></table>") RegExp.Pattern="(\[code\])(.[^\[]*)(\[\/code\])" strValue=RegExp.Replace(strValue,"<table width=100% border=0 cellspacing=0 cellpadding=6 bgcolor=#FFFFFF><td><b>以下内容为程序代码:</b><br>$2</td></table>") RegExp.Pattern="(\[color=(.[^\[]*)\])(.[^\[]*)(\[\/color\])" strValue=RegExp.Replace(strValue,"<font color=$2>$3</font>") RegExp.Pattern="(\[face=(.[^\[]*)\])(.[^\[]*)(\[\/face\])" strValue=RegExp.Replace(strValue,"<font face=$2>$3</font>") RegExp.Pattern="(\[align=(.[^\[]*)\])(.*)(\[\/align\])" strValue=RegExp.Replace(strValue,"<div align=$2>$3</div>") RegExp.Pattern="(\[QUOTE\])(.*)(\[\/QUOTE\])" strValue=RegExp.Replace(strValue,"<table cellpadding=0 cellspacing=0 border=0 WIDTH=94% bgcolor=#000000 align=center><tr><td><table width=100% cellpadding=5 cellspacing=1 border=0><TR><TD BGCOLOR=#FFFFFF>$2</table></table><br>") RegExp.Pattern="(\[fly\])(.*)(\[\/fly\])" strValue=RegExp.Replace(strValue,"<marquee width=90% behavior=alternate scrollamount=3>$2</marquee>") RegExp.Pattern="(\[move\])(.*)(\[\/move\])" strValue=RegExp.Replace(strValue,"<MARQUEE scrollamount=3>$2</marquee>") RegExp.Pattern="\[GLOW=*([0-9]*),*(#*[a-z0-9]*),*([0-9]*)\](.[^\[]*)\[\/GLOW]" strValue=RegExp.Replace(strValue,"<table width=$1 style=""filter:glow(color=$2, strength=$3)"">$4</table>") RegExp.Pattern="\[SHADOW=*([0-9]*),*(#*[a-z0-9]*),*([0-9]*)\](.[^\[]*)\[\/SHADOW]" strValue=RegExp.Replace(strValue,"<table width=$1 style=""filter:shadow(color=$2, strength=$3)"">$4</table>") RegExp.Pattern="(\[i\])(.[^\[]*)(\[\/i\])" strValue=RegExp.Replace(strValue,"<i>$2</i>") RegExp.Pattern="(\[u\])(.[^\[]*)(\[\/u\])" strValue=RegExp.Replace(strValue,"<u>$2</u>") RegExp.Pattern="(\[b\])(.[^\[]*)(\[\/b\])" strValue=RegExp.Replace(strValue,"<b>$2</b>") RegExp.Pattern="(\[fly\])(.[^\[]*)(\[\/fly\])" strValue=RegExp.Replace(strValue,"<marquee>$2</marquee>") RegExp.Pattern="(\[size=1\])(.[^\[]*)(\[\/size\])" strValue=RegExp.Replace(strValue,"<font size=1>$2</font>") RegExp.Pattern="(\[size=2\])(.[^\[]*)(\[\/size\])" strValue=RegExp.Replace(strValue,"<font size=2>$2</font>") RegExp.Pattern="(\[size=3\])(.[^\[]*)(\[\/size\])" strValue=RegExp.Replace(strValue,"<font size=3>$2</font>") RegExp.Pattern="(\[size=4\])(.[^\[]*)(\[\/size\])" strValue=RegExp.Replace(strValue,"<font size=4>$2</font>") RegExp.Pattern="(\[center\])(.[^\[]*)(\[\/center\])" strValue=RegExp.Replace(strValue,"<center>$2</center>") End If Set RegExp=Nothing UBBCode=strValue 输出错误 If Err.Number>0 Then Response.Write Err.Description Response.End End If End Function %> 调用:<%=UBBCode(Content)%> |