RegExp 是正则表达式相关的对象,主要有test,replace,execute方法,下面是通过示例表示使用方法
teststr = "aaaaaa11111111BBBBBBBBB222222222cccccccc"
Set rex = new RegExp '创建RegExp对象
rex.global = True '设置全局模式(默认为False非全局模式,即得到匹配内容后不再继续匹配)
rex.IgnoreCase = True '不区分大小写(默认为False区分大小写)
rex.Pattern = "([a-z]+)" '设置正则模式(就是正则规则)
message = message & "test: " & rex.test(teststr) & VBCRLF 'test方法,如果字符串中有符合模式的内容,返回true
message = message & "replace: " & rex.replace(teststr,"ZZZZZZZ") & VBCRLF 'replace方法,将字符串中符合模式的内容换成指定内容
Set Matches = rex.execute(teststr) 'execute方法,返回的是一个所有符合模式的内容的集合
For Each i In Matches
str = str & " " & i
Next
message = message & "match: " & str & VBCRLF
message = message & "replace: " & rex.replace(teststr,"--$1--") '模式中如果有括号,可以用$1,$2等参数来代替括号中内容
MsgBox message
Set rex = Nothing
----------------------------------------------------
可以把上面例子中的rex.global,rex.IgnoreCase属性分别设置成False,把([a-z]+)的括号去掉,测试一下效果