0

我想创建用于替换的宏。但我的问题是如何在 Visual Basic 的 Visual Studio 宏中使用正则表达式?

document.Selection.ReplacePattern("test{[^']+}test", "testAAAAtest")

不工作。

4

1 回答 1

0

首先,RegEx 是否真的匹配某些东西?首先在“查找”对话框中尝试。

其次,您需要告诉替换模式如何匹配 - 这与查找/替换基本相同。

这里有一些东西可以帮助你开始:(注意 vsFindOptions.vsFindOptionsRegularExpression)

Public Sub ReplaceRegEx()
    DTE.UndoContext.Open("RegEx Replace")
    Dim textSelection As TextSelection = DTE.ActiveDocument.Selection
    textSelection.ReplacePattern("test{[^']+}test", "testAAAAtest", vsFindOptions.vsFindOptionsRegularExpression)
    DTE.UndoContext.Close()
End Sub
于 2010-08-10T01:10:44.450 回答