最後のドットを除く行のすべてのドットを置き換える方法を探しています。
例:
Blah - whatever - foo.bar.baz.avi
になる必要があります
Blah - whatever - foo bar bar.avi
ファイルには複数の行があり、ドットの数は行ごとに異なるため、「最初のXの一致を置き換える」のようなものではなく、Xが定数である一般的な解決策を探しています。
最後のドットを除く行のすべてのドットを置き換える方法を探しています。
例:
Blah - whatever - foo.bar.baz.avi
になる必要があります
Blah - whatever - foo bar bar.avi
ファイルには複数の行があり、ドットの数は行ごとに異なるため、「最初のXの一致を置き換える」のようなものではなく、Xが定数である一般的な解決策を探しています。
最初の回答のバリエーションとして、次の構文を使用することをお勧めします。
%s/\.\ze.*\./ /g
検索演算子の後に次の終止符があるというアサーションを入れましょう。
学習するのに役立つ可能性のある別の方法(視覚的な選択の内側を置き換える)は次のようになります。
ここで、、を入力します。
:g/^/normal $F.hv0:s/\%V\./ /g
^M
^M
CTRL-VEnter
つまり、各行(g/^/
)タイプ$F.
(最後のドットに移動)について、左の文字から行の先頭()まで視覚的に選択し、視覚的選択( )内でのみhv0
ドット()を置き換えます。:s/\./ /g^M
\%V