是否可以在Word VBA中使用RegExp
个对象的替换模式?我可以在文档中搜索带有一堆括号的模式,并将其替换为\4 \2
之类的内容吗? (我尝试过,但它使用了文字字符串。)
答案 0 :(得分:1)
有关RegEx with VBA的信息,请参阅this answer。虽然这个具体的答案是专门为Excel VBA编写的,但它仍然适用于单词。
在示例代码中,他设置了MyRange = ActiveSheet.Range("A1")
而不是Set MyRange = ActiveDocument.Range(Start:=0, End:=Selection.End)
,并将MyRange.Value
替换为MyRange.Text
现有答案是一个强大的工具。有时,查看所有其他Microsoft应用程序的Excel VBA代码会很有帮助,因为Excel是最常编写代码的工具。
答案 1 :(得分:1)
Word本身不支持RegEx。它有自己的通配符功能。这类似于RegEx但不完全相同。您可以通过单击“替换”对话框中的“更多”(Ctrl + H),激活“通配符”复选框,然后查看“特殊”中的列表来查看可能性。如果您在互联网上搜索一组术语,例如 - 单词查找替换通配符 - 您将会看到很多示例和讨论。
JDB_Dragon建议的方法通常在Word中通常不令人满意,因为仅仅操作字符串然后将其写回文档会丢失所有格式。