1. ホーム
  2. regex

[解決済み] VIM find/searchでバックスラッシュやフォワードスラッシュはどのようにエスケープするのですか?

2022-11-14 06:18:41

質問

例えば、バックスラッシュやフォワードスラッシュを含む文字列の検索と置換をしたい場合、vimではどのように実現するのでしょうか?ありがとうございます。

例 find & replace は。 :%s/foo/bar/g

の出現をすべて見つけたい場合はどうすればよいでしょうか。 <dog/> で置き換えて <cat\>

どのように解決するのですか?

リナックスプログラムの他のほとんどの場所で、バックスラッシュで文字をエスケープするのと同じ方法です。

:%s/<dog\/>/<cat\\>

しかし、代わりに別のデリミタを選択することができることに注意してください。

:%s@<doc/>@<cat\\>@

これにより、大量のスラッシュを含むパターンで、時間のかかる、紛らわしいバックスラッシュをすべて入力する必要がなくなります。

から ドキュメント :

の代わりに / の代わりに、パターンや置換文字列を囲む半角英数字を使うことができます。 の代わりに、英数字以外の半角文字を使用することができます。 \ , " または | . これは / を検索 を含めたい場合に便利です。