Gvim高级操作--删除重复行
Gvim没有直接删除重复行的快捷操作,所以需要采用组合命令的方式进行重复行删除。
基本原理是:
- 首先进行排序操作,会将重复行相邻排列
- 然后采用正则表达式匹配两个相邻的重复行,删除其中的一行
- 最后再删除空白行,则完成了目标。
1 、先排序
:sort
2、正则表达式匹配相邻重复行,删除其中一行
:g/\(.\+\)$\n\1/d
g表示全文,$表示行尾,\(.\+\)表示任意一行,\1表示括号内内容,因此\(.\+\)$\n\1表示两个连续行内容相同,g/xxxx/d表示在全文中查找匹配内容,并且删除匹配内容的第一行。
3、删除空白行
:g/^\s\*$/d
^表示行首,$表示行尾,\s表示空格、\*表示任意个(0个或者多个)
^\s\*$表示行首到行尾后有且只有任意个空格