假设我有一个包含以下九行的文本文件:
foo
bar
baz
qux
quux
我如何使用Sublime Text 2删除所有四行空白/空行,仅保留五行?
选择文本
新闻:
- Ctrl + H在PC上,或
- Command
+ Alt + F在Mac上或单击查找->替换。
请确保已通过按以下方式选择“正则表达式”:- Alt + R在PC或
- Command
+ Alt + R在Mac上或
在查找框中单击。*。
查找内容:^\n
替换为:(无,保留空白)。>>
使用多项选择:选择一对换行符,然后使用快速查找全部(
Alt
它们是不使用正则表达式的更简单方法。您只需要选择整个文本即可。然后转到:编辑->置换线->唯一。
另一种方法,您可以使用ConyEdit(插件)的命令行cc.dbl
删除空白行或空白行。
还有“加入行”。如果在OSX上,选择所有文本,然后按CMD-J几次,它将按行折叠您的选择,删除换行符。
[Sublime 2和3有一个很棒的包,叫做'
Trimmer
[使用查找/替换,尝试将选择粘贴到空白行上方的行末,并在空白行之后的行末结束。这适用于单个空白行。您也可以为多个空白行重复该过程。 CTRL-H,通过复制/粘贴或其他方法将您的选择放在查找框中,并将单个换行符放在替换框中。
在我的情况下,一些空行包含Unicode字符
零宽度空格
要查找多余的空格和空白行,请按
Ctrl+Shift+F
选择
正则表达式
如果^\n
不能正常工作===>尝试.*[^\w]\n
当行中没有空格时,Hugo答案中的正则表达式是正确的。如果有空间,则正则表达式可以为^\s+$
也有一些ST2 / ST3插件可用于此类任务。我喜欢这两个:
甚至都不知道整个过程如何工作,但我尝试了^\s*$
并且不起作用(仍然留有一些空行)。
比我想象的要简单。Ctrl
+ A
后跟Ctrl
+ H
,然后选择正则表达式.*
。将\n\n
替换为\n
。瞧!