0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

vim ってすごい (行末の , のみを置換対象にする)

Posted at

いつまで経っても vim 初心者なので、ちょっとした事にスゴイって感じてます。

rails の seeds.rb をコピって factory_bot に書き換えていた時に、やっぱ vim ってスゴイって感じました。

置換元

  bank_id: bank.id,
  credit_card_id: card.id,
  start_dt: Date.new(2014, 9, 1),
  end_dt: Date.new(9999, 12, 31),

置換結果

    bank_id { bank.id }
    credit_card_id { card.id }
    start_dt { Date.new(2014, 9, 1) }
    end_dt { Date.new(9999, 12, 31) }

のようにしたいのです。

: は、行選択後 s/:/ }/g で置換出来ます。
問題は , です。 3 行目と 4 行目で Date メソッドのパラメータのセパレータとして使用されています。
s/,/ }/gc として確認しながら置換する事も出来ますが、それだと間違って Y を押してしまう可能性が残ります。
置換したい , は行末の , だけです。そこで正規表現を使用して行末の , を対象にします。
s/,$/ }/g

vim ってすごいです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?