Vimでは、&anyWord
をすべてC_LOC(anyWord)
に置き換えたいと思います。私は、次のことをしようとしている:Vim置換正規表現
:%s/&\w*/C_LOC(\w*)/g
このコマンドは、すべての&anyWord
を検出します。問題は、それがC_LOC(\w*)
に置き換えられ、C_LOC(anyWord)
に置き換えられないことです。
Vimでは、&anyWord
をすべてC_LOC(anyWord)
に置き換えたいと思います。私は、次のことをしようとしている:Vim置換正規表現
:%s/&\w*/C_LOC(\w*)/g
このコマンドは、すべての&anyWord
を検出します。問題は、それがC_LOC(\w*)
に置き換えられ、C_LOC(anyWord)
に置き換えられないことです。
あなたは、交換におけるパターンと後方参照でキャプチャグループを使用する必要があります。
:%s/&\(\w*\)/C_LOC(\1)/g
あなたは非常に魔法のモードが必要な場合は、パターン内の(
と)
をエスケープするべきではありません。また
、あなたは、少なくとも1ワードの文字にマッチ((
と)
として+
をエスケープについて同じノート)\w\+
で\w*
を交換したい場合。
別の方法があります。第二に
:%s/\v(\&)@<=\w+/C_LOC(&)/
アンパサンド(置換)部分がパターン部を意味します。
ファイル内の単一の '&'を置き換えるように注意してください。 –
アドバイスをいただき、ありがとうございます。確認のために/ gではなく/ gcを使用します。 – Sergio
また、 '*'の代わりに '+'を使用して、 '&'の後に少なくとも**単語の文字が**あることを確認してください。 –