gvim 操作

来源:互联网 发布:lca算法建模 编辑:程序博客网 时间:2024/05/23 14:36

去除重复行的方法

先sort排序,再去重

:sort   //直接排序:g/^\(.*\)$\n\1$/d                      //去除重复行:g/\%(^\1$\n\)\@<=\(.*\)$/d     //功能同上,也是去除重复行:g/\%(^\1\>.*$\n\)\@<=\(\k\+\).*$/d  //功能同上,也是去除重复行

后再http://vim.wikia.com/wiki/Uniq_-_Removing_duplicate_lines

:g/^\(.*\)$\n\1$/d:g/\%(^\1$\n\)\@<=\(.*\)$/d

删除的是重复项的前面一项;后面的命令删除的重复项的后面的内容。注意两个命令独立的,可以分别使用。对于g命令不是很熟悉,它是一个全局命令,以后会有全面介绍。

第二个命令的解释:

g//d <– Delete the lines matching the regexp\@<= <– If the bit following matches, make sure the bit preceding this symbol directly precedes the match\(.*\)$ <– Match the line into subst register 1\%( ) <— Group without placing in a subst register.^\1$\n <— Match subst register 1 followed by end of line and the new line between the 2 lines

0 0
原创粉丝点击