Google Apps文档:body.replaceText不区分大小写

时间:2017-11-24 23:43:46

标签: regex google-docs-api

我正在尝试使用他们的Apps Api在Google文档中执行不区分大小写的查找和替换。我找不到允许我设置此选项的功能(如在幻灯片或用户界面中),因此必须使用body.replaceText()。另外,我想使用变量来设置查找字符串,但是甚至不能使用明确给定的值来处理它。

我尝试了不同的版本但没有成功:
var findValue =" foo&#34 ;; var replaceValue =" bar"

1) var regex = new RegExp('\\bfindValue\\b','gi');
   body.replaceText(regex,replaceValue);

2) var regex="/(\\b)"+findValue+"(\\b)/gi";
   body.replaceText(regex,replaceValue);

3) body.replaceText("/(\\b)"+findValue+"(\\b)/gi",replaceValue);

4) body.replaceText(/foo/gi,"bar");

甚至没有4)在文本中找到Foo或foo。 有什么建议吗?

1 个答案:

答案 0 :(得分:0)

在Google+上,我得到了一个有效的答案: 不要使用regex / foo / gi而是

 var foo;
 var bar;
 var regex="(?i)\\b"+foo+"\\b";
 body.replaceText(regex,bar); 

这将用变量bar中的字符串替换变量foo中的字符串。考虑的只是整个单词(\ b),搜索是不区分大小写的(?i)。 正则表达式作为字符串传递,这使得必须添加额外的' \#39;。