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

foo

bar

baz

qux

quux

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


当前回答

在我的例子中,一些空行包含unicode字符零宽度空格(U+200b)。清除空行,包括带有此unicode字符的行:

\s\x{200b}|^\s

其他回答

Sublime Text 2和3

@crates的评论对我很有用,

步骤1:简单地按ctrl+H

第二步:按RegEX键

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

第四步:全部替换

你正在寻找这个:

^\n|^\s+$

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

例如:

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

选项卡…美国广播公司

这将:

空间……没有其他…

选项卡……没有其他…

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

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

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

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

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

我不得不使用:

取代\ n \ n ^ \ s * 与\ n

https://github.com/NicholasBuse/sublime_DeleteBlankLines插件什么也没做。