Sublime Text 2:如何删除空白/空行

时间:2012-08-17 15:48:13

标签: sublimetext2

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

foo

bar

baz

qux

quux

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

19 个答案:

答案 0 :(得分:619)

选择文字

出版社:

    PC上的
  • Ctrl + H ,或
  • Mac上的
  • 命令 + Alt + F
  • 点击查找 - >替换。

确保按下:

选择了“正则表达式”
    PC上的
  • Alt + R
  • Mac上的
  • 命令 + Alt + R
  • 点击查找框中的。*

找到:^\n

替换为:(没有,留空)。

答案 1 :(得分:63)

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

答案 2 :(得分:23)

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

第一个有两种删除空/不必要行的方法。其中一个叫Delete Surplus Blank Lines很酷。它只删除那些后跟另一个空行

的行

答案 3 :(得分:10)

查找/替换解决方案:

正则表达式查找:\s+

替换为: //单个空格

答案 4 :(得分:8)

甚至不知道这一切是如何运作的,但我试过了 ^\s*$并且没有工作(仍留有一些空行)。

^\s*适用于我
{崇高文本3}

答案 5 :(得分:7)

我不得不使用:

替换\ n ^ \ s * \ n 用\ n

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

答案 6 :(得分:5)

比我想象的更简单。 Ctrl + A后跟Ctrl + H然后选择正则表达式.*。将\n\n替换为\n。瞧!

答案 7 :(得分:4)

Sublime Text 2& 3

@crates的评论为我工作,

步骤1:只需按ctrl + H

第2步:按下RegEX键

第3步:在查找:^[\s]*?[\n\r]+

中写下此内容

第4步:全部替换

答案 8 :(得分:3)

您正在寻找:

^\n|^\s+$

如果内容中包含空格或标签>

,则不会删除该行

e.g:

这些不会被删除: ......空间... abc

... tab ... abc

这将:

......空间......别无其他......

...标签......没别的......

答案 9 :(得分:3)

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

答案 10 :(得分:2)

另一种方法,您可以使用ConyEdit(插件)的命令行cc.dbl删除空白行或空白行。

答案 11 :(得分:2)

他们是不使用正则表达式的更简单方法。 您只需要选择整个文本即可。 然后转到:编辑->置换线->唯一。

仅此而已。并且所有空白行都将被删除。

答案 12 :(得分:1)

还有“加入线”。如果在OSX上,选择所有文本,并按几次CMD-J,它将逐行折叠您的选择,删除换行符。

编辑:这种方法会让你把所有东西放在一行,这不是你要求的。

答案 13 :(得分:1)

对于那些对崇高文本编辑器感到好奇的人来说,unofficial-documentation可能很有趣!

答案 14 :(得分:1)

有一个很棒的包(对于Sublime 2& 3)称为修剪器'删除空行。它还做了许多其他有用的事情。

请参阅:https://packagecontrol.io/packages/Trimmer

答案 15 :(得分:0)

使用find / replace,尝试粘贴从空行上方的行尾开始的选择,并在空白后的行的开头结束。这适用于单个空白行。您也可以重复多个空行的过程。 CTRL-H,将您的选择放在查找框中,并通过复制/粘贴或其他方法在替换框中放置一个换行符。

答案 16 :(得分:0)

在我的情况下,一些空行包含Unicode字符零宽度空格(U + 200b)。要清除空行,包括具有此unicode字符的行:

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

答案 17 :(得分:0)

要查找多余的空格和空白行,请按 Ctrl+Shift+F 选择正则表达式查找

[\n\r]{2,}

,然后替换为

\n

删除升华和Dreamviewr中的所有空间

答案 18 :(得分:-1)

如果^\n无法正常工作===>试试.*[^\w]\n