正则表达式用逗号替换第一个下划线

时间:2009-05-08 22:43:40

标签: regex vim

我有这种模式

a,abc_def_eghi
1,234_556
5,567_987_ghi

我想将第一个_替换为,。我知道%s/old/new/g要替换Vim中的内容。

结果

a,abc,def_eghi
1,234,556
5,567,987_ghi

你能否提出一些替代方案

2 个答案:

答案 0 :(得分:8)

g代表“全球”。如果你把它关掉,替换只会在每一行上应用一次。

%s/old/new/

答案 1 :(得分:3)

如果您只想替换匹配项的第一个,请不要使用g修饰符。也就是说,使用s/old/new/代替s/old/new/g。可以在Wikia找到更多vim搜索/替换提示和技巧。