【发布时间】:2017-06-13 17:39:12
【问题描述】:
我正在尝试使用正则表达式查找并删除 OpenOffice 文档中的任何空白行。
目前我可以分两步完成:
-
搜索
^$并替换为空。这将删除所有空行。
-
搜索
^\s*$并替换为空。这将删除所有仅包含空格或制表符的行。
重要提示:在我看来,这个第 2 版也应该删除任何空行(作为第 1 版),但实际上它没有。
所以,实际上有两个问题。
为什么第二个正则表达式只匹配带有空格和制表符的行,而不匹配空行?
有没有办法将第一版和第二版结合起来一步达到预期的效果?这是我尝试过的:
^$|^\s*$和(^|^\s*)$。但它不起作用。它只匹配空白行,但不匹配空行。
测试文本:
Just for example, I changed spaces to dots
and tabs to dashes.
aa
..........................
-------------------
aaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaa
想要的结果:
aa
aaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaa
【问题讨论】:
-
根据help.libreoffice.org/Common/List_of_Regular_Expressions,
|是用来查找多个词的。^$是一个表达式而不是一个术语,所以这可能就是它不起作用的原因。
标签: regex libreoffice openoffice.org