假设我有一个包含以下9行的文本文件:

foo

bar

baz

qux

quux

我如何使用Sublime Text 2删除所有四个空白/空行,只留下五行?


当前回答

你正在寻找这个:

^\n|^\s+$

如果>前面有空白或制表符,它将不会删除该行

例如:

这些将不会被删除: 空间…美国广播公司

选项卡…美国广播公司

这将:

空间……没有其他…

选项卡……没有其他…

其他回答

使用多个选择:选择一对换行符,然后使用快速查找全部(Alt+F3),或快速添加下一个(Ctrl+D)重复,以选择他们全部;然后按Enter键用换行符替换它们。

它们是一种更简单的方法,不需要正则表达式。 你只需要选择整个文本。 然后转到:编辑——>排列线——>唯一。

这是所有。所有空行都将被删除。

Hugo的答案中的regexp在行中没有空格时是正确的。如果有空格,regexp可以是^\s+$

Sublime Text 2和3

@crates的评论对我很有用,

步骤1:简单地按ctrl+H

第二步:按RegEX键

第三步:在Find: ^[\s]*?[r \ n \] +

第四步:全部替换

也有一些ST2/ST3插件用于此类任务。我很喜欢这两个:

删除空行(也可通过包控制) 尾随空格(也可通过Package Control)

第一个有两个方法用于删除空的/不必要的行。其中一个叫做删除多余的空行,很酷。它只删除后跟另一个空行的那些行