2011-09-15 11 views
0

エラーメッセージのある行をログファイルで検出するが、特定のメッセージは1つしか検出しない。正規表現でエラーメッセージを示す文字列を検索するが、特定の文字列を避ける

例:ER + 4桁の数字を含む

bla ER2323 text<BR> 
bla ER4444 text<BR> 
bla Er2323333 text<BR> 
bla bla bla 
bla ER23 text<BR> 
er1111 text<BR> 

すべてのエラーメッセージがER4444メッセージをキャプチャではなく、しなければなりません。

正規表現:

[Ee][Rr]+[0-9][0-9][0-9][0-9] 

は、エラーメッセージをキャプチャします。どのようにER4444メッセージを避けることができますか?

+1

ER2323' ''異なるER4444'を作る何を? Btwあなたは現在の式を '/ ER \ d {4}/i'と書くことができます。 –

+1

どのような正規表現の味、どのツール? –

答えて

3

あなたは否定先読み使用することができます -

[Ee][Rr](?!4444)\d{4} 
関連する問題