这里简单的给大家介绍一下Vim的查找替换,众所周知,Vim对正则表达式的支持是非常好的,对于程序员来说在分析大量数据的时候,用到Vim的这个功能无疑是件利器。
首先大家要明白vim正则里面的几个特殊含义:
^ 代表行首
$ 代表行尾
/d 代表数字
/D 代表非数字
[x,y,z]:代表各种条件选择
好的,那我们就出几个常用的题目做一下来试一下吧:
1.将以数字开头的行删除
%s/^/d.*$//igc :把这行置成空
%s/^/d.*$/n//igc :把这行直接删掉,包括换行符一起删掉,(注意是/n,而不是/r/n,因为这是针对linux平台,)下一行会到这一行的位置
2.将数字3或者4或者A开头的行删除
%s/^[3,4,A].*$//igc :把这行设置成空
3.
1 IP 202.114.1.1.23444
2 IP 202.114.1.2.wokao
3 IP 202.114.1.3.woai23444
要求最后变为
202.114.1.1
202.114.1.2
202.114.1.3
按照顺序执行如下即可:
%s//d.*IP //igc
%s//./d*$//igc
%s//./D.*$//igc
这一次只是简单给大家说下Vim中正则表达式的用法,详细的以后再细说吧~
转载自Vimer的程序世界 [ http://www.vimer.cn ]
原文链接地址: http://www.vimer.cn/2009/10/vim%e6%ad%a3%e5%88%99%e8%a1%a8%e8%be%be%e5%bc%8f%e6%9f%a5%e6%89%be%e6%9b%bf%e6%8d%a2.html