ASP 正则表达式常用的几种方法(execute、test、replace)

 更新时间:2009年12月14日 03:08:34   作者:  
asp下正则表达式常用的几种方法,需要的朋友可以参考下。
RegExp就是建立正则的对像。
如:
Set regEx = New RegExp

regEx.Pattern 就是来设置正则的模式的,
如:
regEx.Pattern ="/d+"

regEx.IgnoreCase = True ' 设置是否区分大小写
regEx.Global = True ' 设置全程可用性。


RegExp对像有3种方法,分别是execute、test、replace。

test方法是对指定的字符串执行一个正则表达式搜索,并返回一个 Boolean 值指示是否找到匹配的模式。RegExp.Global属性对Test方法没有影响。如果找到了匹配的模式,Test方法返回True;否则返回False。
例子:

测试的时候,msgbox是vbs的用法,如果是asp文件,需要将msgbox替换为response.write
复制代码 代码如下:

Function RegExpTest(patrn, strng)
Dim regEx, retVal ' 建立变量。
Set regEx = New RegExp ' 建立正则表达式。
regEx.Pattern = patrn ' 设置模式。
regEx.IgnoreCase = False ' 设置是否区分大小写。
retVal = regEx.Test(strng) ' 执行搜索测试。
If retVal Then
RegExpTest = "找到一个或多个匹配。"
Else
RegExpTest = "未找到匹配。"
End If
End Function

MsgBox(RegExpTest("\d+", "abcd1234"))
MsgBox(RegExpTest("\d+", "abcd"))


Replace 方法替换在正则表达式查找中找到的文本
例子:
vbs代码
复制代码 代码如下:

Function ReplaceTest(str,patrn, replStr)
Dim regEx, str1 ' 建立变量。
'str1 = "dog 123."
Set regEx = New RegExp ' 建立正则表达式。
regEx.Pattern = patrn ' 设置模式。
regEx.IgnoreCase = True ' 设置是否区分大小写。
ReplaceTest = regEx.Replace(str, replStr) ' 作替换。
End Function

MsgBox(ReplaceTest("dog 123","\d+", "cat")) '将字符串中的123替换为cat


Execute 方法,则是对指定的字符串执行正则表达式搜索。这里又涉及到Match对像和Matches 集合。Matches 集合就是match的对像集合。Matches 集合中包含若干独立的 Match 对象,只能使用 RegExp 对象的 Execute 方法来创建之。例子:
vbs测试代码
复制代码 代码如下:

Function RegExpTest(patrn, strng)
Dim regEx, Match, Matches ' 建立变量。
Set regEx = New RegExp ' 建立正则表达式。
regEx.Pattern = patrn ' 设置模式。
regEx.IgnoreCase = True ' 设置是否区分大小写。
regEx.Global = True ' 设置全程可用性。
Set Matches = regEx.Execute(strng) ' 执行搜索。
For Each Match in Matches ' 遍历 Matches 集合。
RetStr = RetStr & Match.FirstIndex & "。匹配的长度为"&" "
RetStr = RetStr & Match.Length &" "
RetStr = RetStr & Matches(0) &" " '值为123
RetStr = RetStr & Matches(1)&" " '值为44
RetStr = RetStr & Match.value&" " '值为123和44的数组
RetStr = RetStr & vbCRLF
Next
RegExpTest = RetStr
End Function
MsgBox(RegExpTest("\d+", "123a44"))

相关文章

  • PHP正则表达式基础入门

    PHP正则表达式基础入门

    这篇是一篇关于PHP正则表达式基础入门的文章,教大家如何学习php正则表达式,从而真正的掌握php正则表达式,感兴趣的小伙伴们可以参考一下
    2015-11-11
  • javascript中使用正则表达式删除前后空格的方法

    javascript中使用正则表达式删除前后空格的方法

    去掉前后位空格的方法有很多种,下面脚本之家小编给大家分享使用js正则表达式如何删除前后空格,感兴趣的朋友跟着一起学习学习吧
    2015-09-09
  • 比较常用证件正则表达式验证大全

    比较常用证件正则表达式验证大全

    最近做项目,有项目需求需要对各种常用的证件进行验证。而港澳通行证,台湾通行证,护照这些证件,在网上没有搜到正则验证的方法,后来经过一番折腾,结合validator这个验证插件写了一些代码,在此分享给大家,需要的朋友可以参考下
    2015-10-10
  • Javascript校验密码复杂度的正则表达式

    Javascript校验密码复杂度的正则表达式

    这篇文章主要介绍了Javascript校验密码复杂度的正则表达式及正则表达式校验密码的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-08-08
  • 正则 捕获组(capture group)

    正则 捕获组(capture group)

    捕获组就是把正则表达式中子表达式匹配的内容,保存到内存中以数字编号或手动命名的组里,方便后面引用
    2009-07-07
  • 过滤所有HTML代码和CSS,JS

    过滤所有HTML代码和CSS,JS

    过滤所有HTML代码和CSS,JS...
    2006-08-08
  • 正则表达式中最短匹配模式的用法浅析

    正则表达式中最短匹配模式的用法浅析

    最短匹配应用于:假如有一段文本,你只想匹配最短的可能,而不是最长。下面这篇文章主要给大家介绍了关于正则表达式中最短匹配模式用法的相关资料,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-07-07
  • asp.net中匹配URL网址的正则表达式

    asp.net中匹配URL网址的正则表达式

    最近在做一些关于URL匹配的项目,本来对正则表达式了解的不多,上网搜索了好多前辈写的正则表达式,发现很少能被我使用的,现将我自己写的正则表达式贴出来,供大家参考
    2016-10-10
  • 常用JavaScript正则表达式汇编与示例详解

    常用JavaScript正则表达式汇编与示例详解

    目前收集整理了21个常用的javaScript正则表达式,其中包括用户名、密码强度、整数、数字、电子邮件地址(Email)、手机号码、身份证号、URL地址、 IP地址、 十六进制颜色、 日期、 微信号、车牌号、中文正则等。感兴趣的朋友一起看看吧
    2019-04-04
  • PHP 正则表达式验证中文的问题

    PHP 正则表达式验证中文的问题

    PHP 正则表达式验证中文的问题,感觉php不支持perl转义挺讨厌的。
    2009-08-08

最新评论