Cmakeのコンパイル中に問題が発生します。何千もの/root/repo/
があり、/repo/
に置き換えたいです。ソースWordの/
のため、コマンド
:%s/srcWrd/dstwrd/gc
動かない。進め方についてはこちらをご案内ください。
入力例:ファイルの1行に
/root/repo/my-gerrit/myData.cpp
それは次のようになります
/repo/my-gerrit/myData.cpp
以下のコマンドをファイル内で試しましたが、期待どおりに動作しません。
:%s\/root\/\repo\/repo/gc
あなたが与えた例では、ファイルに
/root/repo/my-gerrit/myData.cpp
これは次のように変更できます
/repo/my-gerrit/myData.cpp
コマンド:%s/\root//gc
を使用します。
通常のフォワードスラッシュがない%s\/root\/\repo\/repo/gc
を試みました。 /root/repo/
を/repo/
に置き換える場合、コマンドは%s/\/root\/repo\//\/repo\//gc
になります。
置き換えたいスラッシュは\
でエスケープされることに注意してください。コマンドの一部であるスラッシュはnotエスケープされます。
バックスラッシュを使用してスラッシュをエスケープすることもできますが、別のセパレータを使用する方がはるかに簡単です。
といった:
:%s#/root/repo/#/repo/#gc
または:
:%s+/root/repo/+/repo/+gc
または:
:%s,/root/repo/,/repo/,gc
:s
コマンドでは、ほとんどすべての記号を区切り記号として使用できるため、パターンまたは置換でその記号をエスケープする必要がない記号を簡単に見つけることができます。
参照 :help E146