【问题标题】:Replace first occurrence of text using replaceText(searchPattern, replacement)使用 replaceText(searchPattern, replacement) 替换第一次出现的文本
【发布时间】:2015-05-07 15:50:39
【问题描述】:
我正在尝试使用函数 replaceText(searchPattern, replacement) 替换 Google Doc 中第一次出现的段落,但我似乎找不到正确的 RegEx 表达式。
如果有人可以帮助我,我将不胜感激。
body.replaceText("^"+paragraph.getText()+"$"," ");
【问题讨论】:
标签:
regex
google-apps-script
google-docs
【解决方案1】:
body.ReplaceText() 函数替换模式的所有实例,而不仅仅是第一个实例 (link)。
更好的选择可能是遍历段落以找到第一个匹配文本的段落,如下所示:
function deleteParagraph(textToRemove) {
var body = DocumentApp.getActiveDocument().getBody();
// gets all paragraphs as an array
var paragraphs = body.getParagraphs()
for (var i = 0; i < paragraphs.length; i++){
if (paragraphs[i].getText() === textToRemove){
paragraphs[i].clear()
Logger.log(textToRemove + " was removed")
//stops it looping through any more paragraphs
break;
}
}
}
如果你想练习正则表达式,那么 www.regexr.com 非常方便。