本文介绍了如何使用findText不区分大小写?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试在Google文档中搜索字符串。默认情况下,findText区分大小写。我如何使用它不区分大小写。

引用内容为"使用正则表达式在元素内容中搜索指定的文本模式。"

我就是这么试的:

function search(string) {
  var pattern = new RegExp(string, "gi");
  var doc = DocumentApp.getActiveDocument();
  var body = doc.getBody();
  var rangeElement = body.findText(pattern);
  while (rangeElement) {
    var offset =rangeElement.getStartOffset();
    var text = rangeElement.getElement().asText().getText();
    html += text;
  } 
}

但它什么也找不到。我也试过了:

body.findText(pattern(string));body.findText(/string/i);

还有什么我可以尝试的吗?

推荐答案

问题:

  • 将Regexp"对象"而不是"字符串"类型发送到findText()
  • 不区分大小写的语法不正确。

解决方案:

  • 使用正确的RE2语法
  • 将正则表达式作为字符串发送。这意味着特殊字符s是双重转义的\s

    findText('(?i)Apple') //matches APPLE or AppLe 
    

阅读:

这篇关于如何使用findText不区分大小写?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-31 00:37