我有这样的文字:
This is a normal line.
6 spaces are before me. //line 1
4 spaces are before me. //line 2
3 spaces are before me. //line 3
6 spaces are before me. //line 4
4 spaces are before me. //line 5
Another normal line.
2 spaces are before me. But that is ok. //line 7
Line goes on.
Run Code Online (Sandbox Code Playgroud)
如何使用vim选择并删除第1行到第5行之前的所有空格?
我使用视线模式(Shift+ V)来选择我想要的线条,然后对它们运行替换命令(点击:应该'<,'>在开始时自动包含视觉标记):
:'<,'>s/^\s*
当你工作并且没有弄清楚行号时,这很有用.在这种情况下,如您所知,它是第2到第6行,您可以这样做:
:2,6s/^\s*
快速计算行号的有用选项是set number.
替换命令\s*从每行(^\s*)的开头贪婪地抓取所有空格(),并将其替换为空(等效于/^\s*//).