📄 ubbcode.asp
字号:
<%
Function UBBCode(strContent)
strContent=Replace(strContent,"[#seperator#]","")
Dim re, strMatches, strMatch, tmpStr1, tmpStr2, tmpStr3, tmpStr4, RNDStr
Set re=new RegExp
re.IgnoreCase =True
re.Global=True
re.Pattern="\[code\](<br>)+"
strContent=re.Replace(strContent,"[code]")
re.Pattern="\[quote\](<br>)+"
strContent=re.Replace(strContent,"[quote]")
re.Pattern="\[img\](.*?)\[\/img\]"
Set strMatches=re.Execute(strContent)
For Each strMatch In strMatches
tmpStr1=CheckLinkStr(strMatch.SubMatches(0))
strContent=Replace(strContent,strMatch.Value,"<img src="""&tmpStr1&""" border=""0"" onload=""javascript:DrawImage(this);"" alt=""按此在新窗口打开图片"" onmouseover=""this.style.cursor='hand';"" onclick=""window.open(this.src);"" />")
Next
Set strMatches=Nothing
re.Pattern="\[img=(left|right|center|absmiddle)\](.*?)\[\/img\]"
Set strMatches=re.Execute(strContent)
For Each strMatch In strMatches
tmpStr1=strMatch.SubMatches(0)
tmpStr2=CheckLinkStr(strMatch.SubMatches(1))
strContent=Replace(strContent,strMatch.Value,"<img src="""&tmpStr2&""" align="""&tmpStr1&""" onload=""javascript:DrawImage(this);"" border=""0"" alt=""按此在新窗口打开图片"" onmouseover=""this.style.cursor='hand';"" onclick=""window.open(this.src);"" />")
Next
Set strMatches=Nothing
strContent=replace(strContent,"[swf]","[swf=720,524]")
strContent=replace(strContent,"[wmv]","[wmv=550,400]")
strContent=replace(strContent,"[wma]","[wma=450,70]")
strContent=replace(strContent,"[rm]","[rm=550,400]")
strContent=replace(strContent,"[ra]","[ra=450,60]")
re.Pattern="\[(swf|wma|wmv|rm|ra|qt)=(\d*?|),(\d*?|)\](.*?)\[\/(swf|wma|wmv|rm|ra|qt)\]"
Set strMatches=re.Execute(strContent)
For Each strMatch in strMatches
RNDStr=Int(7999 * Rnd + 2000)
tmpStr1=CheckLinkStr(strMatch.SubMatches(3))
strContent= Replace(strContent,strMatch.Value,"<div class=""code_head""><input id=""VOBJ_"&RNDStr&""" type=""hidden"" value=""-1"" /><a href=""javascript:UBBShowObj('"&strMatch.SubMatches(0)&"','OBJ_"&RNDStr&"','"&strMatch.SubMatches(3)&"','"&strMatch.SubMatches(1)&"','"&strMatch.SubMatches(2)&"');""><img src=""images/icon_media.gif"" alt=""显示影音文件"" align=""absmiddle"" border=""0"" />打开/关闭媒体</a></div><br><div id=""OBJ_"&RNDStr&"""></div>")
Next
Set strMatches=Nothing
re.Pattern = "\[url=(.[^\]]*)\](.*?)\[\/url]"
Set strMatches=re.Execute(strContent)
For Each strMatch In strMatches
tmpStr1=CheckLinkStr(strMatch.SubMatches(0))
tmpStr2=strMatch.SubMatches(1)
strContent=Replace(strContent,strMatch.Value,"<img align=absmiddle src=images/url.gif><a target=""_blank"" href="""&tmpStr1&""">"&tmpStr2&"</a>")
Next
Set strMatches=Nothing
re.Pattern = "\[url](.*?)\[\/url]"
Set strMatches=re.Execute(strContent)
For Each strMatch In strMatches
tmpStr1=CheckLinkStr(strMatch.SubMatches(0))
tmpStr2=CutURL(tmpStr1)
strContent=Replace(strContent,strMatch.Value,"<img align=absmiddle src=images/url.gif><a target=""_blank"" href="""&tmpStr1&""">"&tmpStr2&"</a>")
Next
Set strMatches=Nothing
re.Pattern = "\[email=(.[^\]]*)\](.*?)\[\/email]"
strContent = re.Replace(strContent,"<img align=absmiddle src=images/email.gif><a href=""mailto:$1"">$2</a>")
re.Pattern = "\[email](.*?)\[\/email]"
strContent = re.Replace(strContent,"<img align=absmiddle src=images/email.gif><a href=""mailto:$1"">$1</a>")
re.Pattern="\[fly\](.*)\[\/fly\]"
strContent=re.Replace(strContent,"<marquee width=90% behavior=alternate scrollamount=3>$1</marquee>")
re.Pattern="\[move\](.*)\[\/move\]"
strContent=re.Replace(strContent,"<MARQUEE scrollamount=3>$1</marquee>")
re.Pattern="\[SHADOW=*([0-9]*),*(#*[a-z0-9]*),*([0-9]*)\](.[^\[]*)\[\/SHADOW]"
strContent=re.Replace(strContent,"<table width=$1 ><tr><td style=""filter:shadow(color=$2,strength=$3)"">$4</td></tr></table>")
re.Pattern="\[GLOW=*([0-9]*),*(#*[a-z0-9]*),*([0-9]*)\](.[^\[]*)\[\/GLOW]"
strContent=re.Replace(strContent,"<table width=$1 ><tr><td style=""filter:glow(color=$2,strength=$3)"">$4</td></tr></table>")
strContent = Replace(strContent,"[sub]","<sub>")
strContent = Replace(strContent,"[/sub]","</sub>")
strContent = Replace(strContent,"[sup]","<sup>")
strContent = Replace(strContent,"[/sup]","</sup>")
strContent = Replace(strContent,"[list]","<ul>")
strContent = Replace(strContent,"[list=1]","<ol type=""1"">")
strContent = Replace(strContent,"[list=a]","<ol type=""a"">")
strContent = Replace(strContent,"[list=A]","<ol type=""A"">")
strContent = Replace(strContent,"[*]","<li>")
strContent = Replace(strContent,"[/list]","</ul></ol>")
re.Pattern="\[font=([^<>\]]*?)\](.*?)\[\/font]"
strContent=re.Replace(strContent,"<font face=""$1"">$2</font>")
re.Pattern="\[color=([^<>\]]*?)\](.*?)\[\/color]"
strContent=re.Replace(strContent,"<font color=""$1"">$2</font>")
re.Pattern="\[align=([^<>\]]*?)\](.*?)\[\/align]"
strContent=re.Replace(strContent,"<div align=""$1"">$2</div>")
re.Pattern="\[size=(\d*?)\](.*?)\[\/size]"
strContent=re.Replace(strContent,"<font size=""$1"">$2</font>")
re.Pattern="\[b\](.*?)\[\/b]"
strContent=re.Replace(strContent,"<strong>$1</strong>")
re.Pattern="\[i\](.*?)\[\/i]"
strContent=re.Replace(strContent,"<em>$1</em>")
re.Pattern="\[u\](.*?)\[\/u]"
strContent=re.Replace(strContent,"<u>$1</u>")
re.Pattern="\[code\](.*?)\[\/code\]"
Set strMatches=re.Execute(strContent)
For Each strMatch In strMatches
RNDStr=Int(7999 * Rnd + 2000)
tmpStr1=strMatch.SubMatches(0)
strContent= Replace(strContent,strMatch.Value,"<script type=""text/javascript"">window.attachEvent(""onload"",function (){AutoSizeDIV('CODE_"&RNDStr&"')})</script><table width=""100%"" border=""0"" align=""center"" cellpadding=""0"" cellspacing=""0"" class=""code_head""><tr><td>程序代码:</td><td align=""right""><a href=""javascript:CopyText(document.all.CODE_"&RNDStr&");"">[ 复制代码 ]</a> <a href=""javascript:runCode(document.all.CODE_"&RNDStr&");"">[ 运行代码 ]</a> </td></tr></table><div class=""code_main"" id=""CODE_"&RNDStr&""" style=""overflow-y:auto;overflow-x:hidden;height:150px;"">"&tmpStr1&"</div>")
Next
Set strMatches=Nothing
re.Pattern="\[quote\](.*?)\[\/quote\]"
strContent= re.Replace(strContent,"<div class=""code_head"">引用内容:</div><div class=""code_main"">$1</div>")
Set re=Nothing
strContent=replace(replace(strContent,"[page]",""),"[/page]","")
UBBCode=strContent
End Function
Function CheckLinkStr(Str)
Str = Replace(Str, "document.cookie", ".")
Str = Replace(Str, "document.write", ".")
Str = Replace(Str, "javascript:", "javascript ")
Str = Replace(Str, "vbscript:", "vbscript ")
Str = Replace(Str, "javascript :", "javascript ")
Str = Replace(Str, "vbscript :", "vbscript ")
Str = Replace(Str, "[", "[")
Str = Replace(Str, "]", "]")
Str = Replace(Str, "<", "<")
Str = Replace(Str, ">", ">")
Str = Replace(Str, "{", "{")
Str = Replace(Str, "}", "}")
Str = Replace(Str, "|", "|")
Str = Replace(Str, "script", "script")
Str = Replace(Str, "SCRIPT", "SCRIPT")
Str = Replace(Str, "Script", "Script")
Str = Replace(Str, "script", "Script")
Str = Replace(Str, "object", "object")
Str = Replace(Str, "OBJECT", "OBJECT")
Str = Replace(Str, "Object", "Object")
Str = Replace(Str, "object", "Object")
Str = Replace(Str, "applet", "applet")
Str = Replace(Str, "APPLET", "APPLET")
Str = Replace(Str, "Applet", "Applet")
Str = Replace(Str, "applet", "Applet")
Str = Replace(Str, "embed", "embed")
Str = Replace(Str, "EMBED", "EMBED")
Str = Replace(Str, "Embed", "Embed")
Str = Replace(Str, "embed", "Embed")
Str = Replace(Str, "document", "document")
Str = Replace(Str, "DOCUMENT", "DOCUMENT")
Str = Replace(Str, "Document", "Document")
Str = Replace(Str, "document", "Document")
Str = Replace(Str, "cookie", "cookie")
Str = Replace(Str, "COOKIE", "COOKIE")
Str = Replace(Str, "Cookie", "Cookie")
Str = Replace(Str, "cookie", "Cookie")
Str = Replace(Str, "event", "event")
Str = Replace(Str, "EVENT", "EVENT")
Str = Replace(Str, "Event", "Event")
Str = Replace(Str, "event", "Event")
CheckLinkStr = Str
End Function
Function CutURL(URLStr)
Dim URLLen
URLLen=Len(URLStr)
If URLLen>65 Then
CutURL=Left(URLStr,URLLen*0.5)&" ... "&Right(URLStr,URLLen*0.3)
Else
CutURL=URLStr
End If
End Function
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -