Apps Script Regex - Case Insensitive

时间:2014-05-27 23:20:29

标签: regex google-apps-script re2

我正在为Google文档编写应用脚本。我正在使用findText()来查找指定字符串的实例。

默认情况下,它区分大小写,我需要删除它,但我无法弄清楚如何将/ i添加到re2正则表达式,以便它可以在应用程序脚本引擎中运行。

在我的例子中,我正在尝试查找所有的micssys实例(例如micssys,Micssys,MICSSYS等)。

现在我有:

var text = "micssys";
var bodyElement = DocumentApp.getActiveDocument().getBody();
var searchResult = bodyElement.findText(text);

我试过了:

var searchResult = bodyElement.findText("/"+text+"/i");

var searchResult = bodyElement.findText(text+"/i");

var searchResult = bodyElement.findText(text+"(i)");

这些都不起作用。我缺少什么

1 个答案:

答案 0 :(得分:3)

如果我记得,我相信你可以创建一个新的正则表达式对象,并在这里使用exec

var re = new RegExp('\\bmicssys\\b','gi');

var match;
var bodyElement = DocumentApp.getActiveDocument().getBody();
while (match = re.exec(bodyElement)) {
   // match[0] will return the found results
}

注意:您可能必须使用getText()作为文本字符串检索元素的内容,然后进行匹配。