web-dev-qa-db-ja.com

vim正規表現はエスケープするために\を必要としません

Vimには、たとえばAwkと同じスタイルでregexを書き込むオプションがあります。

/sp\{0,\}/
だろう

/sp{0,}/

18
MageProspero

パターンの前に\vを付けると、パターンが「魔法」になり、{[などの記号には解釈された意味があります(リテラルはエスケープする必要があります)。

したがって、/\vsp{1,}はあなたが望むものを見つけるでしょう(私はそれをテストしたばかりです)。

これを一種のデフォルトにするには、vimrcで次の行を使用して//\vに再マップします。

nnoremap / /\v
vnoremap / /\v

詳細については、 :help pattern を参照してください。

31
Edd Steel

/sp\{0,}

もちろん、{0,}の場合は、*を使用することをお勧めします。/sp*は(上記と同じ) 's'の後に0個以上のpが続くことを検出します。ゼロ以上は常に trueであるため、この特定の式では理由がないことに注意してください。

1
Kevin