如何替换谷歌文档中的文本

时间:2021-02-23 09:46:11

标签: google-apps-script replace google-docs

我已经有了可以工作的代码,但是格式没有保留。执行该功能时,会弹出一个窗口,可以在此处输入文字。当脚本运行完毕后,文字会被替换,但文件的格式完全被破坏。我认为这是因为 getParagraphs。有人知道替代方案吗?

代码:

function anpassen(){
  var varMap={};
  var file=DriveApp.getFileById(DocumentApp.getActiveDocument().getId());

  var doc= DocumentApp.openById(file.getId());
  var para= doc.getBody().getParagraphs();


  for(var i=0; i<para.length;i++){
    var text=para[i].getText();
    if (!text) continue;


    text=text.replace(/{{([^}]*)}}/g, function(m, $1) {
      if(!varMap[$1]){varMap[$1]= DocumentApp.getUi().prompt($1+"?").getResponseText();
    }
    return varMap[$1];
  });
para[i].setText(text);
}
}

1 个答案:

答案 0 :(得分:0)

使用高级 Google 服务

按照 documentation 中的规定,您可以通过使用 Google Apps 脚本直接使用 Document API,请记住,您需要像下面这样导入此高级服务:

enter image description here

还有一个示例说明如何在添加新文本时handle the style

相关问题