命令如下:
s/\(stop\)/\1ed/g
1,$s/\(stop\)/\1ed/g
这个两个命令是不是一个效果?
vim的正则表达式问题
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
-
- 帖子: 60
- 注册时间: 2009-07-21 21:03
- huangyou
- 帖子: 40
- 注册时间: 2006-09-10 21:02
Re: vim的正则表达式问题
:s 指的是substitue, 替换的意思, :%s指的是全域替换,就是从第一行到最后一行;
1,$意思也很明显, $一般指的是最后
1,$意思也很明显, $一般指的是最后
- 543082593
- 帖子: 234
- 注册时间: 2008-11-07 8:41
Re: vim的正则表达式问题
第一个的意思 是把文本中所有的 stop 换成 stoped
第二个的意思是从第一行到最后一行把所有的stop换成stoped
我感觉貌似是一样的 不过没试过
第二个的意思是从第一行到最后一行把所有的stop换成stoped
我感觉貌似是一样的 不过没试过
fall again
smooth criminal
they don't care about us
billie jean
beat it
dangerous
the lost children
childhood
ben
i will be there
speechless
she is out of my life
rock with you
...
LOVE U FOREVER
smooth criminal
they don't care about us
billie jean
beat it
dangerous
the lost children
childhood
ben
i will be there
speechless
she is out of my life
rock with you
...
LOVE U FOREVER
- nio
- 帖子: 74
- 注册时间: 2006-06-30 7:00
- 联系:
Re: vim的正则表达式问题
试了一下没有什么区别。
-
- 帖子: 27
- 注册时间: 2009-04-18 22:33
Re: vim的正则表达式问题
不完全一样。
vim中的替换命令如果不加上address,默认只处理当前行。
也就是说第一个命令只替换当前行的stop,第二个命令则替换整个文本的stop.
vim中的替换命令如果不加上address,默认只处理当前行。
也就是说第一个命令只替换当前行的stop,第二个命令则替换整个文本的stop.