UBB代码替换

原创 2006年06月12日 09:59:00
public static string UbbDecode(string str)
{
str = HtmlEncode(str);
str = Regex.Replace(str, @"/[url](?<url>.+?)/[/url]", "<a href='${url}' target=_blank>${url}</a>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[url=(?<url>.+?)](?<name>.+?)/[/url]", "<a href='${url}' target=_blank>${name}</a>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[email](?<email>.+?)/[/email]", "<a href='mailt${email}' target=_blank>${email}</a>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[email=(?<email>.+?)](?<name>.+?)/[/email]", "<a href='mailt${email}' target=_blank>${name}</a>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[flash](?<flash>.+?)/[/flash]", "<div style='width:640;text-align:left'><a href='${flash}'>[/u5168/u5c4f/u67e5/u770b]</a></div><OBJECT codeBase=http://download.macromedia.com/pub/shockwave/cab s/flash/swflash.cab#version=4,0,2,0 classid=clsid:D27CDB6E-AE6 D-11cf-96B8-444553540000 width=640 height=480><PARAM NAME=movie VALUE='${flash}'><PARAM NAME=quality VALUE=high><embed src='${flash}' quality=high pluginspage='http://www.macromedia.com/shockwave/download/ind ex.cgi?P1_Prod_Version=ShockwaveFlash' type='application/x-sho ckwave-flash' width=640 height=480></embed></OBJECT >", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[dir=(?<width>[0-9]+?),(?<hei ght>[0-9]+?)](?<url>.+?)/[/dir]", "<object classid=clsid:166B1 BCA-3F9C-11CF-8075-444553540000 codebase=http://download.macromedia.com/pub/shockwave/cabs/dir ector/sw.cab #version=7,0,2,0 width=${width} height=${height}><param name= src value=${url}><embed src=${url} pluginspage=http://www.macromedia.com/shockwave/download/ width= ${width} height=${height}></embed></object>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex. Replace(str, @"/[rm=(?<width>[0-9]+?),(?<height>[0-9]+?)](?<url>.+?)/[/rm]", "<OBJECT classid=clsid:CFCDAA03-8BE4-11cf- B84B-0020AFBBCCFA class=OBJECT id=RAOCX width=${width} height=${height}><PARAM NAME=SRC VALUE=${url}><PAR AM 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=${width}><PARAM NAME=SRC VALUE=${url}><PARAM NAME=AUTOSTART VALUE=-1><PARAM NAME=CONTROLS VALUE=controlpanel><PARAM NAME=CONSO LE VALUE=Clip1></OBJECT>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[mp=(?< width>[0-9]+?),(?<height>[0-9]+?)](?<url>.+?)/[/mp]", "<ob ject align=middle classid=CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e 95 class=OBJECT id=MediaPlayer width=${width} height=${height} >< param name=ShowStatusBar value=-1><param name=Filename value=${url}><embed type=application/x-oleobject codebase=http://activex.microsoft.com/activex/controls/mplayer/en/nsmp 2inf.cab#Version=5,1,52,701 flename=mp src=${url} width=${width} height=${height}></embed></object>", RegexOptions.Compil ed | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[qt=(?<width>[0-9]+?),(?<height>[0-9]+?)](?<url>.+?)/[/qt]", "<e mbed src=${url} width=${width} height=${height} autoplay=true loop=false controller=true playeveryframe=false cache=false scale=TOFIT bgcolor=#000000 kioskmode=false targetcache=false pluginspage=http://www.apple.com/quicktime/>", RegexOptions.Compil ed | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[img](?<img>.+?)/[/img]", "<a href='${img}' target=_blank><img src='${ img}' border=0 ></a>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[color=(?<color>.+?)](?<text>.+?)/[/color]", "<font color='${color}'>${t ext}</font>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[face=(?<face>.+?)](?<text> .+?)/[/face]", "<font face='${face}'>${text}</font>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex. Replace(str, @"/[down=(?<file>.+?)](?<text>.+?)/[/down]", "< a href='${file}' target='_blank'>${text}</a>", RegexOptions.Comp iled | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[alig n=(?<align>.+?)](?<text>.+?)/[/align]", "<div align='${align}' >${text}</div>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[quote](?<text>.+?)/[/quote]", "<div class=quote>${text}</div>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex. Replace(str, @"/(?<text>.+?)/", "<i>${text}</i>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex. Replace(str, @"/[u](?<text>.+?)/[/u]", "<u>${text}</u>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex. Replace(str, @"/(?<text>.+?)/", "<b>${text}</b>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex. Replace(str, @"/[size=(?<size>.+?)](?<text>.+?)/[/size]", "< font size='${size}'>${text}</font>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[/*](?<text>.+?)/[//*]", "<li>${text}</li>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
str = Regex.Replace(str, @"/[list](?<text>.+?)/[/list]", "<ul>${text}</ul>", RegexOptions.Compi led | RegexOptions.IgnoreCase);
return Regex.Replace(str, @"/[list =(?<type>.+?)](?<text>.+?)/[/list]", "<ol type=${type}>${text} </ol id=${type}>", RegexOptions.Compiled | RegexOptions.IgnoreCase);
}

我的php学习笔记(三十六)PHP中开发自己的UBB代码

什么是UBB代码 UBB代码是HTML的一个变种,是Ultimate Bulletin Board (国外一个BBS程序,国内也有不少地方使用这个程序)采用的一种特殊的TAG。UBB代码很简单,虽然...
  • yipiankongbai
  • yipiankongbai
  • 2013年04月21日 00:56
  • 1708

【UBB】UBB代码简介

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

使用Objective-C处理UBB标签

有这么个业务需求,抽象出来如下: 展示一条文案,比如“某某人做了某某事”,这里的“某某人”是一个用户的昵称;用户可以修改昵称,修改过后再看之前的文案,“某某人”这个昵称需要跟着变化;文案数据...
  • jasonblog
  • jasonblog
  • 2014年05月23日 10:06
  • 3016

实现简单的代码热替换

package com.hotswap;import java.io.File; import java.io.FileInputStream; import java.io.IOException;...
  • u013855332
  • u013855332
  • 2016年09月08日 19:24
  • 554

文本替换程序代码

文本替换程序代码 标签: pathcharacterfileinput 2011-12-01 09:34 1771人阅读 评论(0) 收藏 举报  分类:   C/C++...
  • autumn20080101
  • autumn20080101
  • 2016年03月05日 01:34
  • 372

偷天换日:网络劫持,网页js被伪装替换。

偷天换日   3月12号石家庄一个客户(后面简称乙方)有几家门店,平台收银(web)有一些功能无法正常使用,平台有上千家门店在使用,到目前为止别的省份都没有此问题。远程协助发现,js日期控件无法正常调...
  • xiaochao21
  • xiaochao21
  • 2016年04月12日 17:09
  • 279

Python代码热替换

为什么需要热替换 代码re't
  • u012815620
  • u012815620
  • 2014年04月21日 20:53
  • 1152

C语言实现字符串替换函数

#include #include #include #include //字符串替换函数 /*************************************************...
  • earbao
  • earbao
  • 2014年03月01日 17:51
  • 22831

fiddler替换服务器上文件进行本地调试

在我们前端开发的日常工作中,发现服务器上某个css/javascript文件有问题,需要修改,那真是家常便饭。通常,我们需要将文件进行修改,然后重新发布再验证,这样就很容易影响到生产环境的稳定性。更普...
  • kaosini
  • kaosini
  • 2014年04月03日 13:39
  • 4827

Eclipse中替换代码中的回车、空行、空格、注释

下面一步步教你把Eclipse中代码的回车、空行、空格、注释都去掉,使所有字母符号都缩挤在一起。 1.首先按快捷键Ctrl+F 2.勾选Regular expression 3.在Find项里填要替换...
  • superit401
  • superit401
  • 2017年10月24日 11:02
  • 376
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UBB代码替换
举报原因:
原因补充:

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