大きなドキュメントで特定の長さの数値を見つける必要があります。私はこれに正規表現を使用しようとしました。たとえば、正確に2桁の数字を検索する必要がある場合は、\d\d
を使用します(つまり、/ dを2回続けてスペースを続けます)。これはうまくいきます。
ただし、10桁の数字を検索する場合、\d
を10回入力することは現実的ではありません。
\d{2}
を試して、「E486:パターンが見つかりません:\ d {2}」と言いました
これを達成するためのより速く/簡単な方法はありますか?
さまざまな正規表現の方言があります。 量修飾子(\d{2}
)でバックスラッシュを必要としないもの(Perlなど)、2つ(\d\{2\}
)を必要とするもの(sedなど)、およびVimでは開始のみカーリーはそれを必要とします(\d\{2}
)。これは、互換性のない正規表現の方言の悲しい状態です。
また、一致するexact数値の場合、\d\{2}
が12
の数字(123
)と一致しないように、一致をアンカーする必要があることに注意してください。これはnegative look-behindおよびlook-aheadで実行できます。
\d\@<!\d\{2}\d\@!
ブラケットのエスケープは機能します:\d\{2\}
それほどきれいではありませんが、これはログファイルの5桁で機能しました。
/\<\%(\d\d\d\d\d\)\>