Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 如何将doc.replaceText()用于多行字符串?通过replaceText替换换行符?_Google Apps Script_Google Docs - Fatal编程技术网

Google apps script 如何将doc.replaceText()用于多行字符串?通过replaceText替换换行符?

Google apps script 如何将doc.replaceText()用于多行字符串?通过replaceText替换换行符?,google-apps-script,google-docs,Google Apps Script,Google Docs,我正在为一个项目使用replaceText(),我希望能够匹配和替换Google文档中跨多行平移的字符串。现在,在replaceText()的“replace”部分,我可以使用\n在新文本中插入换行符,但由于某些原因,我无法使用\n来匹配现有的换行符 假设我在谷歌文档中有这样一个字符串: Line one Line two 我想用“只有一行”来代替它。我试着做了以下几点,但都没有效果 doc.replaceText("Line one\n*Line two", "Just one line"

我正在为一个项目使用replaceText(),我希望能够匹配和替换Google文档中跨多行平移的字符串。现在,在replaceText()的“replace”部分,我可以使用\n在新文本中插入换行符,但由于某些原因,我无法使用\n来匹配现有的换行符

假设我在谷歌文档中有这样一个字符串:

Line one

Line two
我想用“只有一行”来代替它。我试着做了以下几点,但都没有效果

doc.replaceText("Line one\n*Line two", "Just one line");
doc.replaceText("Line one\n\nLine two", "Just one line");
doc.replaceText("Line one\n+Line two", "Just one line");
这使我相信replaceText无法通过\n查找换行符。我很惊讶,因为它在使用上没有任何问题。或。*查找随机字符

有什么好的解决办法?我需要的另一个应用程序是删除多余的换行符(因此,如果一个文档中有三个换行符,则删除它们/将它们转换为一个换行符)


请记住,我对Javascript非常陌生,只在谷歌应用程序中使用它,在谷歌文档中使用脚本。请试着用一些小步骤来解释任何解决方案。提前谢谢

如果您的文档仅包含文本(您将丢失图像等)


如果您的文档仅包含文本(您将丢失图像等)


你的文件只包含文本吗?是的,我想只有文本。它在这里和那里包含一些链接,但大多数都是纯文本,甚至没有超链接或其他内容。不过,文本中的一些颜色和格式不同,仅此而已。请参阅下面的答案。行吗?你的文件只包含文本吗?是的,我想只有文本。它在这里和那里包含一些链接,但大多数都是纯文本,甚至没有超链接或其他内容。不过,文本中的一些颜色和格式不同,仅此而已。请参阅下面的答案。这样行吗?
var text = DocumentApp.getActiveDocument().getBody().getText();
var newText = text.replace(/\n/g,'');
doc.getBody().clear().appendParagraph(newText);