jb51用的ubb转换 原创

ubbcode.asp

复制代码 代码如下:

<%

Function UBBCode(strContent)

If isEmpty(strContent) Or isNull(strContent) Then

Exit Function

Else

dim regex,strMatch

set regex=new RegExp

regex.IgnoreCase =True

regex.Global=True

regex.Pattern="\[html\]((\r\n)?([\s\S]+?))\[\/html\]"

Set strMatchs=regex.Execute(strContent)

For Each strMatch in strMatchs

'response.write strMatch.SubMatches(3)

Randomize

rndID="runcode"&Int(100000 * Rnd)

strContent=Replace(strContent,strMatch.Value,"<br/><font color=red>HTML代码:</font><TEXTAREA style=""width:96%; height:300px;"" id="""&rndID&""" class=""htmlarea"">"&UBBFilter(HTMLDecode(strMatch.SubMatches(2)))& "</TEXTAREA><br/><INPUT onclick=""runEx('"&rndID&"')"" type=""button"" value=""运行此代码""/> <INPUT onclick=""doCopy("&rndID&")"" type=""button"" value=""复制此代码""/> <INPUT onclick=""doSave("&rndID&")"" type=""button"" value=""保存代码""/><br/> [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]")

Next

Set strMatchs=nothing

'去空行

regex.pattern="\n[\s]*\r"

Set strMatchs=regex.Execute(strContent)

For Each strMatch in strMatchs

strContent=Replace(strContent,strMatch.Value,"")

Next

'代码块

regex.Pattern="\[code\]((\r\n)?([\s\S]+?))\[\/code\]"

Set strMatchs=regex.Execute(strContent)

For Each strMatch in strMatchs

Randomize

rndID="code"&Int(100000 * Rnd)

strContent=Replace(strContent,strMatch.Value,"<br/><div style=""float:left""><font color=green>CODE代码:</font></div><div style=""float:right;text-align:right;"">[<a href=""javascript:void(null)"" onclick=""doCopy("&rndID&")"">复制此代码</a>]</div><br/><div class=""codetextarea"" id="""&rndID&""">"&strMatch.SubMatches(2)&"</div>")

Next

Set strMatchs=nothing

'实现插入影音文件

regex.Pattern="\[(swf|wma|wmv|rm|ra|qt)(=\d*?|)(,\d*?|)\]([^<>]*?)\[\/(swf|wma|wmv|rm|ra|qt)\]"

Set strMatchs=regex.Execute(strContent)

dim strType,strWidth,strHeight,strSRC,TitleText

        For Each strMatch in strMatchs

            RAndomize

              strType=strMatch.SubMatches(0)

              if strType="swf" then

               TitleText="<img src=""../images/flash.gif"" alt="""" style=""margin:0px 2px -3px 0px"" border=""0""/>Flash动画"

              elseif strType="wma" then

               TitleText="<img src=""../images/music.gif"" alt="""" style=""margin:0px 2px -3px 0px"" border=""0""/>播放音频文件"

              elseif strType="wmv" then

               TitleText="<img src=""../images/mediaplayer.gif"" alt="""" style=""margin:0px 2px -3px 0px"" border=""0""/>播放视频文件"         

              elseif strType="rm" then

               TitleText="<img src=""../images/realplayer.gif"" alt="""" style=""margin:0px 2px -3px 0px"" border=""0""/>播放real视频流文件"         

              elseif strType="ra" then

               TitleText="<img src=""../images/realplayer.gif"" alt="""" style=""margin:0px 2px -3px 0px"" border=""0""/>播放real音频流文件"         

              elseif strType="qt" then

               TitleText="<img src=""../images/mediaplayer.gif"" alt="""" style=""margin:0px 2px -3px 0px"" border=""0""/>播放mov视频文件"         

              end if

              strWidth=strMatch.SubMatches(1)

              strHeight=strMatch.SubMatches(2)

              if (len(strWidth)=0) then 

                strWidth="400"

                else

               strWidth=right(strWidth,(len(strWidth)-1))

              end if

              if (len(strHeight)=0) then

               strHeight="300"

                else

              strHeight=right(strHeight,(len(strHeight)-1))

              end if

              strSRC=strMatch.SubMatches(3)

            rndID="temp"&Int(100000 * Rnd)

            strContent= Replace(strContent,strMatch.Value,"<div class=""UBBPanel""><div class=""UBBTitle"">"&TitleText&"</div><div class=""UBBContent""><a id="""+rndID+"_href"" href=""javascript:MediaShow('"+strType+"','"+rndID+"','"+strSRC+"','"+strWidth+"','"+strHeight+"')""><img name="""+rndID+"_img"" src=""../images/mm_snd.gif"" style=""margin:0px 3px -2px 0px"" border=""0"" alt=""""/><span id="""+rndID+"_text"">在线播放</span></a><div id="""+rndID+"""></div></div></div>")

        Next

        Set strMatchs=nothing

        regex.Pattern="(\[mid\])(.[^\]]*)\[\/mid\]"

        strContent= regex.Replace(strContent,"<embed src=""$2"" height=""45"" width=""314"" autostart=""0""></embed>")

regex.pattern="<br>([\s| | ]*)?<br>"

strContent=regex.replace(strContent,"<br>")

strContent=replace(strContent,"&","&")

strContent=replace(strContent,"'","'")

strContent=replace(strContent,"","") '因为以前上传图片

set regex=nothing

end if

UBBCode=strContent

end function

%>

基本上来自pjhome

时间: 2024-09-04 09:08:40

jb51用的ubb转换 原创的相关文章

jb51用的ubb转换[原创]_正则表达式

ubbcode.asp 复制代码 代码如下: <% Function UBBCode(strContent) If isEmpty(strContent) Or isNull(strContent) Then Exit Function Else dim regex,strMatch set regex=new RegExp regex.IgnoreCase =True regex.Global=True regex.Pattern="\[html\]((\r\n)?([\s\S]+?))

php ubb转换成html,html转换成ubb代码

php ubb转换成html,html转换成ubb代码 function htmlToUBB($str) {  $str = preg_replace("/<img[^>]+src="([^"]+)"[^>]*>/i","[img]$1[/img]",$str);  $str = preg_replace("/<embed[^>]+src="([^"]+)"[^

UBB 转换函数演示

  UBB代码对于经常上论坛的朋友来说是最熟悉不过了.经典论坛的UBB转换我觉得是处理的非常好的,研究了一下它的转换结果[因为没有源码:)],做了下面的演示.转换结果基本上觉得象了.     主要是针对[code][html]这两个标签的处理,其他的UBB标签还是一般的处理方法.     下面是分别用javascript和vbscript实现的演示.自己做论坛的朋友,如果想实现类似经典论坛的运行代码框可以看看这种转换. 欢迎大家输入尽量多格式的UBB进行测试,多多指出错误. javascript

自己写的一个UBB转换的函数

ubb|函数|转换 function ubb2xhtml($ubb){$flash=<<<END<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="" width="%1\$d" height="%2\$d"> <param name="movie" value="%3\$

一个新版本的ubb转换代码一文有些错误,编辑过后的版本在这里

ubb|错误|转换 http://202.103.176.81/erun/jiangjianxiao/bbs/newsdetail.asp?id=338

ubb转换成html

<% function encodestr(str) str=trim(str) str=replace(str,"<","<") str=replace(str,">",">") str=replace(str,"'","""") str=replace(str,vbCrLf&vbCrlf,"</p><

ubb转换成html 代码

function up(str){   str = str.replace(/</ig,'<');   str = str.replace(/>/ig,'>');   str = str.replace(/n/ig,'<br />');   str = str.replace(/[code](.+?)[/code]/ig, function($1, $2) {return phpcode($2);});   str = str.replace(/[hr]/ig,'<

ubb 转换成html代码

<% function unhtml(s_string)  s_string=replace(s_string,"&","&")  's_string=replace(s_string," "," ")  s_string=replace(s_string,"<","<")  unhtml=replace(s_string,">"

asp ubb转换代码程序

function UBBCode(strContent,ctype)  on error resume next  if ctype=1 then  strContent = HTMLEncode(strContent)  else  strContent = strContent  end if  dim objRegExp  Set objRegExp=new RegExp  objRegExp.IgnoreCase =true  objRegExp.Global=True     if c