vim用のgreplaceプラグインを使用していますが、検索時に括弧をエスケープする方法がわかりません。vim:gsearch(greplaceプラグイン)エスケープ文字
私はクッキーを検索したい[親]と試してみました:
:Gsearch cookies[:parent] # returns nothing
:Gsearch cookies\[:parent\] # returns nothing
がどのように私はこれを行うべきか?
おかげ
vim用のgreplaceプラグインを使用していますが、検索時に括弧をエスケープする方法がわかりません。vim:gsearch(greplaceプラグイン)エスケープ文字
私はクッキーを検索したい[親]と試してみました:
:Gsearch cookies[:parent] # returns nothing
:Gsearch cookies\[:parent\] # returns nothing
がどのように私はこれを行うべきか?
おかげ
:Gsearch cookies\\\[:parent]
が私に役立ちます。
Gsearchにはパターンに加えてファイルマスクが必要なので、実際には:Gsearch \\\[:parent] *.php
などと入力して、検索するファイルを指定することをお勧めします。
は
Gsearch cookies\\\[:parent\\\]
または
Gsearch 'cookies\[:parent\]'
を試してみてください。私が正しく理解していれば、:grep!
によって呼び出されたシェルは、:Gsearch
という文字列がgrep -n cookies\[:parent\] /dev/null
(grepprgオプションはデフォルト値を持つと仮定します)を取得し、glob展開を防ぐためにエスケープすると考えるシェルによって解釈されます。しかし、シェルで行われたグロブの後に、grepはパターンとして引数を取るので、grepのためにそれをエスケープする必要もあります。なぜなら、3つのバックスラッシュがあります.2つはgrepにバックスラッシュを与え、3つはグロブ展開を防ぐことです。
ありがとう、私はファイルマスクを使用していただけでここに入力していません。私は助けに感謝します。 – codedmart