使用 RegEx 搜索 VBA 源代码

Posted

技术标签:

【中文标题】使用 RegEx 搜索 VBA 源代码【英文标题】:Search the VBA source code with RegEx 【发布时间】:2012-07-21 00:16:36 【问题描述】:

我需要在我的源代码中找到所有出现的特定 RegEx(即 col*r )。我意识到如果您使用VBComponents.CodeModule.Find() 方法,您可以通过编程方式在代码中搜索模式(RegEx),正如here 和here 中所解释的那样。但这不符合我的需要,因为它只告诉你是否找到了这样的表达。我还需要模块中的实际表达式(例如colourcolor)。

有没有办法在 VBA 中以编程方式实现这一点?

【问题讨论】:

您可以使用 vbscript 正则表达式来进行搜索,而不是使用 Find() 方法:这有一个 Execute 方法,它返回一个或多个 Match 对象,您可以从中获取匹配的文本。 msdn.microsoft.com/en-us/library/ms974570.aspx 在这里查看第二个版本:***.com/questions/9612675/… 【参考方案1】:
Dim re, match
Set re = CreateObject("vbscript.regexp")
re.Pattern = "your regex"
re.Global = True

For Each match In re.Execute("you input")
    MsgBox match.Value
Next

欲了解更多信息,请查看此链接:http://msdn.microsoft.com/en-us/library/ms974570.aspx

【讨论】:

以上是关于使用 RegEx 搜索 VBA 源代码的主要内容,如果未能解决你的问题,请参考以下文章

Mongodb数据库的模糊搜索

在其他 Access 数据库中搜索 VBA 代码文件

Python 3:使用 REGEX 搜索大型文本文件

根据搜索键 VBA 删除行

使用 RegEx 匹配 Excel/VBA 中的五个字符,第一个字符取决于单元格值

搜索特定列后,如何使用 MS Word VBA 代码对具有特定文本的单元格进行着色?