vimで正規表現に一致する行の前にテキスト行を挿入する

vimで正規表現に一致する行の前にテキスト行を挿入する

私はvimを使ってHTMLテーブルに列を追加しようとしているので、<td>それぞれの行の前にタグのペアを追加する必要があります</tr>。これまでのところ、

:186,$s/ <\/tr>/<td><\/td> \n <\/tr>/g
しかし、vim は^@tr タグを閉じるために新しい行を作成する代わりに表示します。これを回避する方法はありますか?

答え1

\rはい、置換部分では の代わりにを使用する必要があります。\nこれは Vim コマンドの癖です。また、 などの別の区切り文字を使用したり、 で一致を参照したりすることで、:sコマンドをさらに簡略化できます。#&

:186,$s# </tr>#<td></td> \r&#g

関連情報