我有大量的数字,我想在每行的末尾添加内容。就像这样:

前:

123123
123123
13234
124125
12634
5234

后:
123123, 1
123123, 2
13234, 3
124125, 4
12634, 5
5234, 6

要点:
  • 我知道:range s/oldpattern/newpattern/将用新样式替换旧样式。
  • 我知道for i in range(begin, end) | something | endfor可以生成这些额外的数字。

  • 但是,我不知道是否可以将它们组合起来做我想要的事情(或者是否有其他方法可以做到)。有人知道如何自动添加这些额外的值吗?我很确定使用Vim是可能的,但是我不知道怎么做。

    最佳答案

    您可以通过直观地选择区域然后键入来完成此操作

    :s/$/\=', '.(line('.')-line("'<")+1)<CR>
    

    (在可视模式下键入:时,范围会自动添加)。如果您可以键入行号来代替它,则可以使用可视模式来获取line("'<")东西,而无需使用任何范围。

    10-07 21:55