2012-04-27 94 views
2

什么是VIM中使用搜索和替换在每行FIRST逗号之后添加数字1的最佳方式?每行都有多个逗号(这是一个csv),我想在每行的第一个逗号后插入值1。VIM搜索和替换正则表达式

回答

7

我相信只是:s/,/,1/应该这样做。如果您不使用g选项,则它只会替换每行找到的第一个实例。

:%s/,/,1/如果你想要它适用于整个文件,第一个选项只对一行。

+0

我实际上在Mac OSX Mountain Lion的vim中体验过OMITTING/g选项,它是在同一行代替多个正则表达式的唯一方法,这很奇怪。/g选项没有按照它应有的工作。删除/ g允许我搜索并替换每行匹配的多个实例。 – netpoetica 2013-06-17 15:20:38

0

使用此正则表达式/(^.*?,)/gm与此替换$11。对于每一行,从行首开始捕捉所有内容,直到第一个逗号。这被记录在组1中,由$1表示。将其替换为$11,它是组1,然后是1

入住这里:http://regexr.com?30pjf