四时宝库

程序员的知识宝库

学习VBA,报表做到飞 第四章 正则表达式 4.3 正则表达式的方法和属性

第四章 正则表达式

4.3 正则表达式的方法和属性

正则表达式一共有3个方法,4个属性。

4.3.1 正则表达式的属性

4.3.1.1 Global

查找范围。True表示全部查找,False表示只查第一个。默认为False,但一般都在代码里设置为True。

例句:reg.Global = True

4.3.1.2 Pattern

正则表达式,也就是描述要找的字符串特征的元字符和量词的组合。

例句:reg.Pattern = "\d+"

4.3.1.3 IgnoreCase

是否区分大小写。默认为False(区分大小写),需要时可以设置为True(不区分大小写)。

例句:reg.IgnoreCase = False

4.3.1.4 Multiline

给定的正则表达式是否以多行模式执行,默认为False(单行模式搜索),需要时可以设置为True(多行模式搜索)。这个属性通常与首尾匹配符^和$一起使用(首尾匹配以后的章节里我们会讲),对于给出的多行字符串,需要用首尾匹配来写正则表达式时,VBA会把整段文字作为一行来匹配,所以这时通常会把Multiline设置为True(多行模式搜索),正则表达式就会匹配每行的开头和结尾。

例句:reg.Multiline = True

4.3.2 正则表达式的方法

4.3.2.1 Execute

对要搜索的对象进行匹配,返回匹配结果。

例句:Set 结果 = reg.Execute(要搜索的字符串)

4.3.2.2 Replace

正则表达式的Replace与VBA中的用法不同,正则表达式.Replace(待替换的字符串,要替换成的字符串),是把待替换的字符串里匹配上的结果替换为要替换成的字符串,没有匹配上的仍然保留。

例如:如果匹配数字"\d+",则Regexp.Replace("abc123", ""),执行结果是“abc”,匹配上的数字全部替换为空了,没有匹配上的字母仍然保留。

4.3.2.3 test

test方法用于测试某个字符串是否能够匹配成功,如果成功返回True,否则返回False。

例句:reg.test(字符串)

正则表达式的元字符和量词、方法和属性我们都学习过了,从下一章节开始,我们就开始用正则表达式来写VBA代码啦!


往期精彩回顾:

学习VBA,报表做到飞 第四章 正则表达式 4.2 正则表达式的元字符和量词

学习VBA,报表做到飞 第四章 正则表达式 4.1 正则表达式的引用

学习VBA,报表做到飞 第三章 字典 3.6 字典关键字选取


我是云飞扬,职场财会人员,愿与大家分享表格制作和数据统计分析的技巧与方法,希望大家的工作更便捷,更轻松!

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接