|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
写软件都是想的时间比写的时间要长的.如果反过来了就得看看是什么原因了.另外大家可以回去问问公司里的小MM.(一般企业里,跟你们交付软件接触得最多的是她们)ubb上一次,我们谈到在ASP中怎样使用“正则表达式”工具来完成各类数据的校验,文中形貌了正则表达式工具的壮大功效,接上去,
我们来看看有关“正则表达式”工具的其他功效。当我们在网上冲浪的时分,特别是扫瞄各种论坛的时分,常常会晤到“UBB代码”
这个词语。甚么是UBB代码呢?UBB代码是HTML的一个变种,是UltimateBulletinBoard(外洋一个BBS程序,国际也有很多中央
利用这个程序)接纳的一种特别的TAG。为了不用户偶然大概成心的HTML代码对论坛的打击,各类论坛基础上都屏障了HTM
L代码,可是为了使得论坛加倍“多姿多彩”,论坛城市响应的开放一些自界说的Tag标签,相似于HTML中的Tag,好比
“,,[RED],[/RED]”,如许,能够供应一些同等于HTML代码的功效,又制止了论坛遭到歹意打击,这些自界说的
各类Tag就是俗称的UBB代码。眼下时兴的论坛均撑持UBB代码,好比:http://www。chinaasp。com(动
感手艺收集)的论坛就很好的撑持UBB代码。如今,我们一同利用“正则表达式”工具来完成我们本人的丰厚多彩的UBB代码吧。
起首,你的服务器端(IIS大概PWS)要有VBScript5.0的撑持情况,一样平常指要安装了IE5.X就已能够撑持“正则表达式”对
象了。
关于“正则表达式”工具的罕见办法、属性的利用办法,我在本刊的“在ASP中使用“正则表达式”工具完成数据的校验”一文中已
经有具体先容了,能够拜见那一篇文章,在这里,我次要先容一下完成“UBB代码”的次要正则表达式工具办法:Replace()方
法。
Replace办法语法以下:
形貌
交换在正则表达式查找中找到的文本。
语法
object.Replace(string1,string2)
Replace办法的语法包括以下几个部分:
部分 形貌
object 必须的。老是一个RegExp工具的称号。
string1 必须的。string1是将要举行文本交换的字符串。
string2 必须的。string2是交换文本字符串。
申明
被交换的文本的实践形式是经由过程RegExp工具的Pattern属性设置的。
Replace办法前往string1的正本,个中的RegExp.Pattern文本已被交换为string2。假如没有找到婚配的文本,将前往
本来的string1的正本。
接上去,我们要断定我们终极想要完成一套甚么样的UBB代码?此次我们要完成的UBB代码功效以下:
URL超等链接
在你的信息里到场超等链接,只需按以下体例套进就能够了(UBB代码是粗体).
www.test.net
按上例套进,UBB代码会主动对URL发生链接,并包管当用户点击新的窗口时这个链接是翻开着的。
电子邮件链接
在你的信息里到场电子邮件的超等链接,只需依照下例套进就能够了(UBB代码是粗体)
uestc95@263.net
按上例套进,UBB代码会对电子邮件主动发生链接。
到场图像
在你的信息里到场图像,只需按下例套进就能够了(UBB代码是粗体).
在上例中,UBB代码会主动让图像在你的信息里显现。
其他Tag
另有这些tag,usmallh1h2h3h4h5h6strikeblinksubsupdelprebig,这些tag的功效与html的功效同等
[h1]这是一个题目[/h1]
[/tag]是必需的
让一段笔墨利用色彩显现
这是一个特别的tag
[#ff0000]一段白色的字[/#]
#前面跟的色彩的16进制RGB代码,如白色是ff0000,绿色是00ff00,而蓝色是0000ff
至于其他形形色色的UBB代码的完成体例同下面的相似,我们就以下面UBB代码完成作为例子来说解“正则表达式”工具的壮大功
能。
我们次要利用Replace()办法共同响应的模版,就能够便利的完成UBB代码功效了,在这里我们次要用到了两个本人编写的函数,第
一个函数ReplaceTest,这个函数完成的功效次要是将“正则表达式”工具举行了封装,供应三个出口参数:
Patrn
这个参数传送的是UBB代码的婚配模版
Str
这个参数传送的是将要以UBB体例处置的字符串,好比文章内容。
ReplStr
这个参数传送的是婚配成的HTML代码言语。
ReplaceTest函数的出口参数是经由模版婚配交换以后的字符串。
ReplaceTest函数代码以下:
FunctionReplaceTest(patrn,str,replStr)
DimregEx,str1创建变量。
str1=trim(str)
SetregEx=NewRegExp创建正则表达式。
regEx.Pattern=patrn设置形式。
regEx.IgnoreCase=true设置是不是辨别巨细写。
ReplaceTest=regEx.Replace(str1,replStr)作交换。
setregEx=nothing‘烧毁正则表达式工具
EndFunction
我们要编写的第二个函数是:UBB()函数。这个函数完成的功效就是将一段文本举行UBB功效的转换。这个函数仅仅只要一个出口参
数:
Str
这个参数传送要被处置的字符串。
UBB函数的出口参数是经由UBB代码处置事后的字符串。
UBB函数的代码以下:(程序中有具体正文信息)
FunctionUBB(str)
dimi,temp‘声明变量
i=1
temp=""
dowhileinstr(i,str,"[/"]>=1 ‘假如没有到达字符串的开端
iftrim(temp)=""then
temp=ReplaceTest("()(S+)()",str,"<i>$2</i>") ‘举行UBB代码的模版婚配与交换
else
temp=ReplaceTest("()(S+)()",temp,"<i>$2</i>") ‘举行UBB代码的模版婚配与交换
endif
temp=ReplaceTest("()(S+)()",temp,"<b>$2</b>") ‘举行UBB代码的模版婚配与交换
temp=ReplaceTest("([big])(S+)([/big])",temp,"<big>$2</big>") ‘举行UBB代码的模版婚配与交换
temp=ReplaceTest("([strike])(S+)([/strike])",temp,"<strike>$2</strike>")‘举行UBB代码的模版婚配与交换
temp=ReplaceTest("([sub])(S+)([/sub])",temp,"<sub>$2</sub>")‘举行UBB代码的模版婚配与交换
temp=ReplaceTest("([sup])(S+)([/sup])",temp,"<sup>$2</sup>")
temp=ReplaceTest("([pre])(S+)([/pre])",temp,"<pre>$2</pre>")
temp=ReplaceTest("()(S+)()",temp,"<u>$2</u>")
temp=ReplaceTest("([small])(S+)([/small])",temp,"<small>$2</small>")
temp=ReplaceTest("([h1])(S+)([/h1])",temp,"<h1>$2</h1></p>缺乏可以共同遵循的行业标准,ASP还处在发展初期,大家对它的理解不同,如产品和服务标准,收费标准等,不利于行业的健康发展。 |
|