快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

一个新版本的UBB转化程序

这段代码将用户输入的ubb代码转化为html格式,注重,需要Script Engine 5.0的支持(使用了RegExp对象)

注:pattern中使用()将知道regexp记忆搜索到的值,$1是第一个(),其余类推。但$2的语法并不被5.0版本的vbscript.dll所支持,我检查了自己机器上的版本(安装过ie 5.5),发现vbscript.dll的版本为5.50.4629,最后修改日期为12月25日。该版本支持$1之类的语法,这个简朴的改进使regexp的功能逐渐与perl的正则表达式靠近

function UBBCode(strContent)

dim objRegExp
Set objRegExp=new RegExp
objRegExp.IgnoreCase =true
objRegExp.Global=True
\\\'url
objRegExp.Pattern="([URL])(http://S+?)([/URL])"
strContent= objRegExp.Replace(strContent,"<A HREF=""$2""
TARGET=_blank>$2</A>")
objRegExp.Pattern="([URL])(S+?)([/URL])"
strContent= objRegExp.Replace(strContent,"<A HREF=""http://$2""
TARGET=_blank>$2</A>")
\\\'email
objRegExp.Pattern="([EMAIL])(S+@S+?)([/EMAIL])"
strContent= objRegExp.Replace(strContent,"<A
HREF=""mailto:$2"">$2</A>")

objRegExp.Pattern="([IMG])(S+?)([/IMG])"
strContent=objRegExp.Replace(strContent,"<IMG SRC=""$2"">")

objRegExp.Pattern="([QUOTE])(.+?)([/QUOTE])"
strContent=objRegExp.Replace(strContent,"<BLOCKQUOTE><font size=1
face=""Verdana, Arial"">quote:</font><HR>$2<HR></BLOCKQUOTE>")

objRegExp.Pattern="([i])(.+?)([/i])"
strContent=objRegExp.Replace(strContent,"<i>$2</i>")

objRegExp.Pattern="([b])(.+?)([/b])"
strContent=objRegExp.Replace(strContent,"<b>$2</b>")
set objRegExp=Nothing
UBBCode=strContent
end function
=-=====================
sub UBBCode {
my $ThePost = shift;
$ThePost =~ s/([URL])(http://S+?)([/URL])/ <A HREF="$2"
TARGET=_blank>$2</A> /isg;
$ThePost =~ s/([URL])(S+?)([/URL])/ <A HREF="http://$2"
TARGET=_blank>$2</A> /isg;
$ThePost =~ s/([EMAIL])(S+@S+?)([/EMAIL])/ <A
HREF="mailto:$2">$2</A> /isg;
if (($UBBImages eq "ON") && ($OverrideImages ne "yes")) {
$ThePost =~ s/([IMG])(S+?)([/IMG])/ <IMG SRC="$2"> /isg;
}

$ThePost =~ s/([QUOTE])(.+?)([/QUOTE])/ <BLOCKQUOTE><font size="1"
face="Verdana, Arial">quote:</font><HR>$2<HR></BLOCKQUOTE>/isg;
$ThePost =~ s/([i])(.+?)([/i])/<i>$2</i>/isg;
$ThePost =~ s/([b])(.+?)([/b])/<b>$2</b>/isg;
return ($ThePost);
}
返回类别: 教程
上一教程: 页面延迟的两个简朴方式
下一教程: 关于JMAIL如何在收件人处指定多个收件人

您可以阅读与"一个新版本的UBB转化程序"相关的教程:
· 为你的ASP程序制作一个编译组件(中)
· 采用XMLHTTP编写一个天气预告的程序
· 一个功能完善的专栏治理的程序->这是asp.net的第二个应用(一)
· 一个功能完善的专栏治理的程序->这是asp.net的第二个应用(三)
· 一个简朴的ASP分页程序
    微笑服务 优质保证 索取样品