asp学习网: 首页 >> 正则表达式 >> vbscript中用正则时获得匹配串的心得

vbscript中用正则时获得匹配串的心得

作者邮箱:northsnow@163.com

vbscript中用正则比在javascript中麻烦一些。javascript中不用创建RegExp对象就可以用正则,但是在vb中就不可以。还有javascript中可以利用RegExp.$1获得模式匹配,但是vb中就不行。需要用到另外一个对象和一个个集合:MatchCollection,Match

  举一个例子如下:

  假设有一个有这样一个串 

  strNor=";northsnow:塞北的雪;csdn:中国最大的开发者网络;crc:长春轨道客车股份有限公司;"

  串中包含了很多子串,子串是用;(分号)分割开的,每个子串也分两个部分,前一部分为标识或英文名,后一个部分为中文名或说明。根据给定的标识查找后面的说明怎么做呢?这就是我们这个例子将要解决的问题:

  代码如下:

dim oStr
oStr=";northsnow:塞北的雪;csdn:中国最大的开发者网络;crc:长春轨道客车股份有限公司;"

'www.aspxuexi.com
function getName(ooID)
dim objRegExp ,reMatchCol,reMatch,reSubMatch
dim rValue
Set objRegExp=new RegExp
objRegExp.Pattern=";(" & ooID & "):([^;]*)"
objRegExp.IgnoreCase=true
objRegExp.Global=true
set reMatchCol= objRegExp.execute(oStr) '执行查询,并返回匹配到一个匹配集合中
if reMatchCol.count>0 then
Set reMatch = reMatchCol(0) '将第一匹配串放到一个匹配对象中
Set reSubMatch = reMatch.SubMatches '返回子匹配集合
if reSubMatch(0)=ooID then
rValue=reSubMatch(1)
else
rValue=""
end if
else
rValue=""
end if
getName=rValue
end function
response.Write getName("northsnow")

作者邮箱:northsnow@163.com

from:asp学习网/title:vbscript中用正则时获得匹配串的心得/ time:2007-10-8 21:59:25

本文主题正则

一个正则表达式验证密码强度

利用正则快速找出两个字符串的不同字符

javascript与正则表达式培训

.NET正则表达式使用高级技巧之替换类

正则表达式高级技巧

ip地址输入框(没有错误检测)外加一个严格校验ip地址的正则表达式

常用正则表达式收集&勘误(本站推荐)

Asp:正则表达式与论坛中UBB的应用

asp教程 ©2006-2007 aspxuexi.com | 关于站点 | 版权隐私 | 站内搜索
复制或者翻版 请于夜间进行