我不确定发生了什么。我的脚本工作正常,但现在我得到了一个无效的参数:var rangeElement = copyBody.findText(email);
function form(e) {
var ss = SpreadsheetApp.openById('xxxxxx');
var email = e.values[1];
var docTemplate = 'yyyyyyyy';
var newEstimate = 'firstName' + 'lastName';
var copyId = DriveApp.getFileById(docTemplate).makeCopy(newEstimate).getId(); // Get document template, copy it, and save the Doc’s id
var copyDoc = DocumentApp.openById(copyId); // Open the temporary document
var copyBody = copyDoc.getBody(); // Get the document’s body section
copyBody.replaceText('<Email>', email);
var mailto = 'mailto:' + email;
var rangeElement = copyBody.findText(email);
var startOffset = rangeElement.getStartOffset();
var endOffset = rangeElement.getEndOffsetInclusive();
var text = rangeElement.getElement().asText();
if (rangeElement.isPartial()) { text.setLinkUrl(startOffset,endOffset,mailto); } else { text.setLinkUrl(mailto); }
)
有什么想法吗?
答案 0 :(得分:1)
您的错误消息是说您的正则表达式模式“”无效。
如果您查看documentation,就会发现RE2需要支持此参数的语法。
尝试使用“ [EMAIL]”之类的内容来替换您要替换的文本。
此外,如果电子邮件是null
或""
,则可能要添加错误检查,以免执行无效的操作。