在Sublime Text 3中:是否有删除所选文本中空白行的快捷方式?(对于一行中的空白也一样)

Joh*_*nyH 22 sublimetext3

我的问题很简单:

Sublime Text 3中是否有快捷方式允许删除所选文本中的空白行?(对于一行中的空白也一样)

例如,如何制作这个文本:

a

b

c
Run Code Online (Sandbox Code Playgroud)

成为:

a
b
c
Run Code Online (Sandbox Code Playgroud)

这一行:

I need to remove these blanks.
Run Code Online (Sandbox Code Playgroud)

成为这一行:

Ineedtoremovetheseblanks.

Mat*_*DMo 53

你不需要一个插件来做这个,一个简单的正则表达式搜索和替换就可以了.首先,选择要删除空白行的文本.然后,选择Find ? Replace…(或者CtrlH,F在OS/X上,在OS X上).确保选中"正则表达式"和"在选择中"按钮:

查找/替换对话框

Find What:,输入^\n,并确保该Replace With:字段为空.然后,只需点击"全部替换"即可:

在更换之前

成为这个:

更换后

作为一点解释,正则表达式^\n搜索一行(^)的开头,后面跟一个换行符(\n).如果您怀疑某些"空白"行包含空格(如空格或制表符),则可以使用^\s*\n- \s*匹配0个或更多空格字符,包括换行符.

对于第二个示例,请使用与上面相同的"查找/替换"设置,但正则表达式应该只是\s*.

  • `^ \ s * \ n`对我有用,因为它包含空格。 (4认同)

Sim*_*one 8

有一个名为Trimmer的软件包。您可以通过Package Control安装它。

获得软件包后,即可使用其功能。只需突出显示要更改的文本即可(如果要更改整个文件,则不要选择任何内容),然后选择:

1)编辑>行>删除空行

2)编辑>行>删除空格

另外,正如克里斯的答案所指出的那样,您可以使用编辑器中已经存在的经典搜索和替换功能。