UBB代码~(整理)

原创 2004年05月01日 21:25:00

在论坛中,我常常要使用到特殊的显示效果,而要得到这些效果,我们通常都是使用ubb 函数来处理,下面是我整理的ubb代码~,有待完善~

[CODE]

'----------------------------------------------------------'
'--------------------UBBCode Function----------------------'
'----------------------------------------------------------'

Function UBBCode(ByVal strValue)
 '忽略错误
 On Error Resume Next
 '定义变量
 Dim RegExp
 Dim strNewValue
 Set RegExp = New RegExp
 RegExp.IgnoreCase = True
 RegExp.Global = True
 strValue = UCase(HTMLEncode(strValue))
 
 If strValue <> "" Then
  RegExp.Pattern = "(/[URL/])(.[^/[]*)(/[//URL/])"
  strNewValue = RegExp.Replace(strValue,"<A HREF='HTTP://$2' TARGET='_BLANK'>$2</A>")

  RegExp.Pattern = "(/[URL/])(HTTP:////.[^/[]*)(/[//URL/])"
  strNewValue = RegExp.Replace(strValue,"<A HREF='$2' TARGET='_BLANK'>$2</A>")

  RegExp.Pattern = "(/[URL=(HTTP:////.[^/[]*)/])(.[^/[]*)(/[//URL/])"
  strNewValue = RegExp.Replace(strValue,"<A HREF='$2' TARGET='_BLANK'>$3</A>")

  RegExp.Pattern = "(/[URL=(.[^/[]*)/])(.[^/[]*)(/[//URL/])"
  strNewValue = RegExp.Replace(strValue,"<A HREF='HTTP://$2' TARGET='_BLANK'>$3</A>")

  RegExp.Pattern = "(/[IMG/])(.[^/[]*)(/[//IMG/])"
  strNewValue = RegExp.Replace(strNewValue,"<IMG SRC='$2' BORDER='0'>")

  RegExp.Pattern = "(/[IMG=(HTTP:////.[^/[]*)/])(/[//IMG/])"
  strNewValue = RegExp.Replace(strNewValue,"<IMG SRC='$2' BORDER='0'>")

  RegExp.Pattern = "(/[IMG=(.[^/[]*)/])(/[//IMG/])"
  strNewValue = RegExp.Replace(strNewValue,"<IMG SRC='HTTP://$2' BORDER='0'>")

  RegExp.Pattern = "(/[SIZE=([0-9]*)/])(.[^/[]*)(/[//SIZE/])"
  strNewValue = RegExp.Replace(strNewValue,"<FONT SIZE='$2'>$3</FONT>")
  
  RegExp.Pattern = "(/[B/])(.[^/[]*)(/[//B/])"
  strNewValue = RegExp.Replace(strNewValue,"<B>$2</B>")

  RegExp.Pattern = "(/[COLOR=(.[^/[]*)/])(.[^/[]*)(/[//RED/])"
  strNewValue = RegExp.Replace(strNewValue,"<FONT COLOR='$2'>$3</FONT>")

  RegExp.Pattern = "(/[RED/])(.[^/[]*)(/[//RED/])"
  strNewValue = RegExp.Replace(strNewValue,"<FONT COLOR='#FF0000'>$2</FONT>")

  RegExp.Pattern = "(/[GREEN/])(.[^/[]*)(/[//GREEN/])"
  strNewValue = RegExp.Replace(strNewValue,"<FONT COLOR='#009900'>$2</FONT>")

  RegExp.Pattern = "(/[BLUE/])(.[^/[]*)(/[//BLUE/])"
  strNewValue = RegExp.Replace(strNewValue,"<FONT COLOR='#000099'>$2</FONT>")

  RegExp.Pattern = "(/[GRAY/])(.[^/[]*)(/[//GRAY/])"
  strNewValue = RegExp.Replace(strNewValue,"<FONT COLOR='#999999'>$2</FONT>")

  RegExp.Pattern = "(/[S/])(.[^/[]*)(/[//S/])"
  strNewValue = RegExp.Replace(strNewValue,"<FONT STYLE='TEXT-DECORATION:LINE-THROUGH'>$2</FONT>")

  RegExp.Pattern = "(/[I/])(.[^/[]*)(/[//I/])"
  strNewValue = RegExp.Replace(strNewValue,"<I>$2</I>")

  RegExp.Pattern = "(/[U/])(.[^/[]*)(/[//U/])"
  strNewValue = RegExp.Replace(strNewValue,"<U>$2</U>")

  RegExp.Pattern = "(/[ALIGN=(.[^/[]*)/])(.[^/[]*)(/[//ALIGN/])"
  strNewValue = RegExp.Replace(strNewValue,"<DIV ALIGN='$2'>$3</DIV>")

  RegExp.Pattern = "(/[CENTER/])(.[^/[]*)(/[//CENTER/])"
  strNewValue = RegExp.Replace(strNewValue,"<CENTER>$2</CENTER>")

  RegExp.Pattern = "(/[EMAIL/])(.[^/[]*)(/[//EMAIL/])"
  strNewValue = RegExp.Replace(strNewValue,"<A HREF='MAILTO:$2'>$2</A>")

  RegExp.Pattern = "(/[EMAIL=(.[^/[]*)/])(.[^/[]*)(/[//EMAIL/])"
  strNewValue = RegExp.Replace(strNewValue,"<A HREF='MAILTO:$2'>$3</A>")

  RegExp.Pattern = "(/[FLY/])(.[^/[]*)(/[//FLY/])"
  strNewValue = RegExp.Replace(strNewValue,"<MARQUEE SCROLLAMOUT='3' BEHAVIOR='ALTERNATE' WIDTH='98%'>$2</MARQUEE>")

  RegExp.Pattern = "(/[MOVE/])(.[^/[]*)(/[//MOVE/])"
  strNewValue = RegExp.Replace(strNewValue,"<MARQUEE SCROLLAMOUT='3'>$2</MARQUEE>")

  RegExp.Pattern = "(/[MP=([0-9]*),([0-9]*)/])(.[^/[]*)(/[//MP/])"
  strNewValue = RegExp.Replace(strNewValue,"<OBJECT ALIGN='MIDDLE' CLASSID='CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95' CLASS='OBJECT' ID='MEDIAPLAYER' WIDTH='$2' HEIGHT='$3'><PARAM NAME='SHOWSTATUSBAR' VALUE='-1'><PARAM NAME='FILENAME' VALUE='$4'><EMBED TYPE='APPLICATION/X-OLEOBJECT' CODEBASE='HTTP://ACTIVEX.MICROSOFT.COM/ACTIVEX/CONTROLS/MPLAER/EN/NSMP2INF.CAB#VERSION=5,1,52,701' FILENAME=MP SRC='$4'  WIDTH='$2' HEIGHT='$3'></EMBED></OBJECT>")

  RegExp.Pattern = "(/[FLASH/])(.[^/[]*)(/[//FLASH/])"
  strNewValue = RegExp.Replace(strNewValue,"<OBJECT CODEBASE='HTTP://DOWNLOAD.MACROMEDIA.COM/PUB/SHOCKWAVE/CABS/FLASH/SWFLASH.CAB#VERSION=4,0,2,0' CLASSID='CLSID:D27CDB6E-AE6D-11CF-96B8-444553540000' WIDTH='500' HEIGHT='400'><PARAM NAME='MOVIE' VALUE='$2'><PARAM NAME='QUALITY' VALUE='HIGH'><EMBED SRC='$2' QUALITY='HIGH' PLUGINSPAGE='http://WWW..MACROMEDIA.COM/SHOCKWAVE/DOWNLOAD/INDEX.CGI?P1_PROD_VERSION=SHOCKWAVEFLASH' TYPE='APPLICATION/S-SHOCKWAVE-FLASH' WIDTH='500' HEIGHT='400'>$2</EMBED></OBJECT>")

  RegExp.Pattern = "(/[QT=([0-9]*),([0-9]*)/])(.[^/[]*)(/[//QT/])"
  strNewValue = RegExp.Replace(strNewValue,"<EMBED SRC='$4' WIDTH='$2' HEIGHT='$3' AUTOPLAY='TRUE' LOOP='FALS'E CONTROLLER='TRUE' PLAYEVERYFRAME='FALSE' CACHE=FALSE SCALE='TOFIT' BGCOLOR='#000000' KIOSKMODE='FALSE' TARGETCACHE='FALSE' PLUGINSPAGE='HTTP://WWW.APPLE.COM/QUICKTIME/'>")

  RegExp.Pattern = "(/[RM=([0-9]*),([0-9]*)/])(.[^/[]*)(/[//RM/])"
  strNewValue = RegExp.Replace(strNewValue,"<OBJECT CLASSID='CLSID:CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA' CLASS='OBJECT' ID='RAOCX' WIDTH='$2' HEIGHT='$3'><PARAM NAME='SRC' VALUE='$4'><PARAM NAME='CONSOLE' VALUE='CLIP1'><PARAM NAME='CONTROLS' VALUE='IMAGEWINDOW'><PARAM NAME='AUTOSTART' VALUE='TRUE'></OBJECT><BR><OBJECT CLASSID='CLSID:CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA' HEIGHT='32' ID='VIDEO2' WIDTH='$3'><PARAM NAME='SRC' VALUE='$4'><PARAM NAME='AUTOSTART' VALUE='-1'><PARAM NAME='CONTROLS' VALUE='CONTROLPANEL'><PARAM NAME='CONSOLE' VALUE='CLIP1'></OBJECT>")
 End If
 UBBCode = LCase(strNewValue)

 '输出错误
 If Err.Number>0 Then
  Response.Write Err.Description
  Response.End
 End If
End Function

'----------------------------------------------------------'
'-------------------HTMLEncode Function--------------------'
'----------------------------------------------------------'

Function HTMLEncode(ByVal strValue)
 '忽略错误
 On Error Resume Next
 '定义变量
 Dim strNewValue
 If strValue <> "" Then
  strValue = Server.HTMLEncode(strValue)
  strNewValue = Replace(strValue,"<","&lt;")
  strNewValue = Replace(strNewValue,">","&gt;")
  strNewValue = Replace(strNewValue,"'","&#39;")
  strNewValue = Replace(strNewValue,"""","&quot;")
  strNewValue = Replace(strNewValue,vbCrLf,"<br>")
  strNewValue = Replace(strNewValue," ","&nbsp;")
 End If
 HTMLEncode = strNewValue

 '输出错误
 If Err.Number>0 Then
  Response.Write Err.Description
  Response.End
 End If
End Function

[CODE]

使用的时候,在你的textarea中输入ubb代码,那么,在处理页面直接使用

content = UBBCode(Request.Form("content"))就可以咯~

关于ubb的书写,可以在网上搜索,我就不说咯!

 

ubb编辑器代码

UBB代码列表 具体代码含义如下: [b]文字[/b] 插入粗体字 [i]文字[/i] 插入斜体字 [u]文字[/u] 插入下划线 [s]文字[/s] 插入删除线 [fly]文字[fly] 插入飞行文...
  • lvlingwy
  • lvlingwy
  • 2007年05月30日 14:46
  • 2010

论坛完整版ubb代码

function ChkBadWords(fString)    bwords = split(BadWords, "|")    for i = 0 to ubound(bwords)       ...
  • xpnh123
  • xpnh123
  • 2008年06月04日 08:44
  • 654

ubb discuz 编辑器

演示地址:http://52515.net/upfile/ubb/下载地址:http://52515.net/upfile/ubb.rar添加内容时调用编辑器方法:编辑内容时调用编辑器方法:显示数据库...
  • ChoTech
  • ChoTech
  • 2007年08月29日 11:06
  • 845

UBB码表情替换方法

今天来个UBB表情替换的功能方法。前几天一直比较头疼应该如何把UBB替换成表情图片,想过用webview,也想过用viewgroup一个一个往上加。但是都不理想,用webview的话服务器端需要另做处...
  • zhou699
  • zhou699
  • 2011年06月21日 10:39
  • 1110

ubb使用说明

什么是 UBB 代码?UBB 代码是HTML的一个变种. 你也许已经对它很熟悉了。UBB代码对于网上公告板之类的信息交互的平台,是比HTML更加安全的代码。由于要求使用的编码很少,所以可以非常轻松的取...
  • sfwap
  • sfwap
  • 2005年07月10日 16:56
  • 753

一个UBB类及其使用方法(C#完整版)

先把这个类的源码贴出来,然后再给一个使用例子,供大家参考。UBB类源码:using System;using System.Data;using System.Configuration;using ...
  • itzhiren
  • itzhiren
  • 2007年06月11日 14:35
  • 1100

分享一个非常好用的UBB转html类

分享一个非常好用的UBB转html类。discuz搭建的论坛可以使用。 测试过没有问题的。 测试结果:  import java.util.regex.Matcher; import jav...
  • tianyaxingge
  • tianyaxingge
  • 2011年08月11日 19:21
  • 1600

正则表达式在UBB论坛中的应用

一、读者指引   读者指引帮助你掌握本文的梗概。以免你看了大半才明白这编文章不适合你,给你造成视觉污染。   如果你正在用ASP写程序,或者你正在写一些诸如BBS、留言溥或表单数据检查之类的东东那就...
  • lovelium
  • lovelium
  • 2007年03月07日 09:01
  • 310

【UBB】UBB代码简介

http://baike.baidu.com/link?url=JEDKx14OqvdvpNZjsK4As4er1ey-f-D9BDJ0jncLop0pwS8aCH-bdOfWT7u9N1mBGU9c...
  • horsttnann
  • horsttnann
  • 2014年04月09日 10:12
  • 487

用ASP实现论坛的UBB功能

   前几日我曾经阅读到一篇技术文章讲述如何使用VBScript中的正则表达式对象来实现论坛里面的UBB功能。VBScript提供的正则表达式对象功能非常强大,但是只有5。5以上的脚本引擎才可以很好的...
  • wangxiaobo23
  • wangxiaobo23
  • 2006年09月06日 11:22
  • 694
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UBB代码~(整理)
举报原因:
原因补充:

(最多只允许输入30个字)