当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 一个不错的用JavaScript实现的UBB编码函数

Javascript
经常用到的JavasScript事件的翻译
Javascript下的keyCode键码值表
用javascript动态调整iframe高度的代码
javascript应用:Iframe自适应其加载的内容高度
javascript 控制弹出窗口
用javascript父窗口控制只弹出一个子窗口
给moz-firefox下添加IE方法和属性
FireFox中textNode分片的问题
对google个性主页的拖拽效果的js的完整注释[转]
身份证号码前六位所代表的省,市,区, 以及地区编码下载
一个友好的.改善的 Object.prototype.toString的实现
如何写一个通用的JavaScript效果库!(1/2)
如何写一个通用的JavaScript效果库!(2/2)
几个高效,简洁的字符处理函数
无语,javascript居然支持中文(unicode)编程!
ie 处理 gif动画 的onload 事件的一个 bug
讲两件事:1.this指针的用法小探. 2.ie的attachEvent和firefox的addEventListener在事件处理上的区别
firefox 和 ie 事件处理的细节,研究,再研究-----书写同时兼容ie和ff的事件处理代码
深入聊聊Array的sort方法的使用技巧.详细点评protype.js中的sortBy方法
JavaScript 中的replace方法说明

Javascript 中的 一个不错的用JavaScript实现的UBB编码函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 396 ::
收藏到网摘: n/a

function JsUBB(str)
{
var re=//[i/](.[^/[]*)/[//i/]/gi;
str=str.replace(re,"<i>$1</i>"); //斜体字
re=//[b/](.[^/[]*)/[//b/]/gi;
str=str.replace(re,"<b>$1</b>"); //粗体字
re=//[u/](.[^/[]*)/[//u/]/gi;
str=str.replace(re,"<u>$1</u>"); //下划线
re=//[color=(.[^/[]*)/](.[^/[]*)/[//color/]/gi;
str=str.replace(re,"<font color=$1>$2</font>"); //字体颜色
re=//[size=([1-7])/](.[^/[]*)/[//size/]/gi;
str=str.replace(re,"<font size=$1>$2</font>"); //字体大小
re=//[face=(.[^/[]*)/](.[^/[]*)/[//face/]/gi;
str=str.replace(re,"<font face=$1>$2</font>"); //字体
re=//[center/](.[^/[]*)/[//center/]/gi;
str=str.replace(re,"<div align='center'>$1</div>"); //居中
re=//[right/](.[^/[]*)/[//right/]/gi;
str=str.replace(re,"<div align='right'>$1</div>"); //右对齐
re=//[quote/](.[^/[]*)/[//quote/]/gi; //引用
str=str.replace(re,"<table bgcolor='#E6FFE6' width='90%' style='border:1px #009900 dotted' align='center'><tr><td class='td1'>$1</td></tr></table>");
re=//[fly/](.*)/[//fly/]/gi; //飞行
str=str.replace(re,"<marquee width=90% behavior=alternate scrollamount=3>$1</marquee>");
re=//[move/](.*)/[//move/]/gi; //移动
str=str.replace(re,"<MARQUEE scrollamount=3>$1</marquee>");
re=//[SHADOW=*([0-9]*),*(#*[a-z0-9]*),*([0-9]*)/](.[^/[]*)/[//SHADOW]/gi; //阴影
str=str.replace(re,"<table width=$1><tr><td style='filter:shadow(color=$2, strength=$3)'>$4</td></tr></table>");
re=//[GLOW=*([0-9]*),*(#*[a-z0-9]*),*([0-9]*)/](.[^/[]*)/[//GLOW]/gi; //外发光
str=str.replace(re,"<table width=$1 ><tr><td style='filter:glow(color=$2, strength=$3)'>$4</td></tr></table>")
re=//[URL/](.[^/[]*)/[//URL/]/gi;
str=str.replace(re,"<a href='$1' target=_blank>$1</a>"); //超链接1
re=//[URL=(.[^/[]*)/](.[^/[]*)/[//URL/]/gi;
str=str.replace(re,"<a href='$1' target=_blank>$2</a>"); //超链接2
re=//[EMAIL/]([/w-]+(/.[/w-]+)*@[/w-]+(/.[/w-]+)+)/[//EMAIL/]/gi;
str=str.replace(re,"<a href='mailto:$1'>$1</a>"); //电子邮件链接1
re=//[EMAIL=([/w-]+(/.[/w-]+)*@[/w-]+(/.[/w-]+)+)/](.[^/[]*)/[//EMAIL/]/gi;
str=str.replace(re,"<a href='mailto:$1'>$4</a>"); //电子邮件链接2
re=//[img/](.[^/[]*)/[//img/]/gi;
str=str.replace(re,"<a href='$1' target=_blank><img src='$1' border='0' alt='单击在新窗口浏览'></a>"); //图片
re=/:em(/d{1,}):/gi;
str=str.replace(re,"<img src='emot/$1.gif' border='0'>"); //表情图标
return str;
}