7

ログでエラーを見つける正規表現があります:

/(exception|error)/i

これは機能しますが、次のことが発生したときにアラートを受け取りたくない場合を除きます。これは発生すると予想されます。

DD/MM/YYYY 10:20pm: Read exception encountered

「発生した読み取り例外」文字列を具体的に拒否するにはどうすればよいですか? ?! を使用しようとしています。演算子ですが、失敗します:

/(?!Read exception encountered)(exception|error)/i

上記は、除外したい文字列と一致します。

更新: 以下の否定的な後読みおよび先読みソリューションを試した結果、SiteScope が基本的な POSIX 正規表現機能のみをサポートし、拡張機能をサポートしていないことがわかりました。基本的なPOSIX正規表現機能のみを使用して解決策は可能ですか?

4

4 に答える 4

1

部分文字列が文字列内にある場合に文字列全体を拒否する場合はRead exception encountered、ほとんどの言語でサポートされている否定的な先読みを使用します。

^(?![^\r\n]*?\bRead exception encountered\b)[^\r\n]*?(exception|error)

実際の例: http://www.rubular.com/r/CV7P9huVsI

ここに画像の説明を入力

于 2013-07-11T20:30:41.443 に答える
1

このようなことを試してください /([^R][^e][^a][^d]) (exception|error)/

于 2014-02-11T18:15:28.210 に答える