javascript - 删除 Google 文档中的空行

标签 javascript html regex formatting google-docs

我在 Google 文档中有一些文本。

• 第 1 行• 第 2 行• 第 3 行

我想找到一种自动化的方法来制作此文本

  • 第 1 行
  • 第 2 行
  • 第 3 行

(每个项目符号之间没有空行)

我使用谷歌应用程序脚本过滤掉文本中的项目符号点(在本例中为特殊字符),并添加一个新行:

function myFunction() {
      var doc = DocumentApp.getActiveDocument(); 
      var body = doc.getBody(); 
      body.replaceText('• ', '\n');
}

它似乎有效,但是当我突出显示所有文本并单击项目符号列表时,第一行只显示一个项目符号。这可能是因为 '\n' 与 Enter 键不同:

• 第 1 行
2号线
第 3 行

我想要的是将每个项目符号点替换为通过删除项目符号点并放置回车键所获得的相同输入。这意味着当我突出显示后面的文本并单击项目符号列表时,我会在每一行上看到一个项目符号。

然后我尝试将我的功能更改为

function myFunction() {
      var doc = DocumentApp.getActiveDocument(); 
      var body = doc.getBody(); 
      body.replaceText('• ', '\r\n');
}

这会在每行之间添加一个空行:
第1行

2号线

3号线

显然,似乎也没有办法删除所有空白行。

最佳答案

换行符是问题所在。虽然 \n 会产生换行符,但 Google 文档可能不会接受它作为项目符号列表的正确分隔符。

function myFunction() {
  var doc = DocumentApp.getActiveDocument(); 
  var body = doc.getBody(); 
  body.replaceText('•\\s+', '\n');
}

以下正则表达式可用于匹配每个项目符号点并将其替换为换行符,就像您手动单击 Enter 键一样。

关于javascript - 删除 Google 文档中的空行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76245673/

相关文章:

html - 如何使div的大小为字母数

java - myString.replaceAll(regex ,"") 未按预期工作

Php、正则表达式、反向引用

php - 浏览器刷新时保存 XHR 渲染状态

javascript - 如果在 jquery 中选中任何复选框,则显示不同的元素

html - CSS:将鼠标悬停在 3 个堆叠图像上

javascript - 贪婪在 JavaScript 中表现不同?

javascript - 如何关闭所有 ionic 2 模态?

javascript - Swiper 禁用左右半/部分滑动

javascript - AR.JS - 旋转地球仪