如何在 Word 加载项的程序搜索中转义字符?

How can characters be escaped in programmatic search in Word Add-ins?

假设我在 Word Web 加载项中的代码需要查找由一对 [] 组成的字符串,它们之间有任意数量的字符,后跟一对 (),它们之间有任意数量的字符他们。由于 [],(, 和 ) 是 RegEx 中的特殊字符(Word 在其 UI 中调用 "wildcard search"),因此需要对它们进行转义。当我在 UI 中进行通配符搜索时,以下工作正常:

\[*\]\(*\)

但是当我在 Office.js 中使用其中一个 search() 函数时,例如:

var searchResults = context.document.body.search('\[*\]\(*\)');

我只得到由单个“*”字符组成的范围。

那么,如何以编程方式转义字符?

在新的 stackexchange ID 下回答我自己的问题。

反斜杠字符“\”未用作程序搜索中的转义字符。要转义 search() 函数中的字符,您可以将其包装在“[]”字符中。以下是我在问题中使用的 UI 搜索字符串的程序等效项:

[[]*[]][(]*[)]

这很好用。