使用 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 源代码的主要内容,如果未能解决你的问题,请参考以下文章