使用列表/数据库中的值查找和替换文本

时间:2018-01-15 09:27:39

标签: google-apps-script google-docs

我创建了一个相当简单的脚本,可以找到英文并用西班牙语替换它。

function translatesp() {
var body = DocumentApp.getActiveDocument()
.getBody();

body.replaceText('Master Change Log', 'Historial de Cambios');
body.replaceText('Prepared for:', 'Preparado para:'); 
body.replaceText('Git Reference', 'Referencia Git');

}

我想要做的是在某个地方(可能在单独的Google工作表上)列出一个列表中的所有英语和西班牙语单词,然后更改我的脚本以查找英语列中的所有内容然后替换它使用相关的西班牙语条目,这样我就不需要继续为脚本本身添加词汇。怎么会这样呢?

提前致谢。

1 个答案:

答案 0 :(得分:0)

我实际上基本上不得不做一段时间这件事。我最终制作了一个帮助工具,将电子表格表示为数据库表。我把它放在github这里:

https://github.com/anderspitman/google-apps-script-database

将该文件复制并粘贴到您的脚本项目中,然后使用以下内容来使用它:

function main() {

  var spreadsheet = SpreadsheetApp.openById('SPREADSHEET_ID_HERE');
  var translationDb = Database.fromSpreadsheet(spreadsheet)
    .getTable('Sheet1');

  var wordInAllLanguages = translationDb.findOne({ English: 'Yes' });

  Logger.log(wordInAllLanguages.Spanish);
}

电子表格如下所示:

enter image description here

请注意,Database类对许多其他内容也很有用。查看代码以查看其他功能。它的设计有点类似于在javascript中与MongoDB连接。

相关问题