3

インターンシップの一環として、正規表現を使用してログ ファイルを解析する必要があります。これは Java ログであり、例外の検出に問題があります。

実際、私の正規表現は Notepad++ では機能しますが、Java (1.6) では機能しません。

これは私の正規表現です:

(.*\bERROR\b.*)\r?\n((\tat|.*[Ee]xception|\t\.\.\.|\r?\n|ORA-).*\r?\n)+(^(?!.*ERROR).+)\r?\n

なぜなのかご存知ですか ?

ありがとう。

4

3 に答える 3

1

問題は文字の使用です。オブジェクトを複数行フラグで^宣言することを忘れないでください。Pattern

final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);

どうもありがとうございました!なぜそれを使うべきなのか教えていただけますか?

于 2013-05-21T09:33:09.957 に答える
1

http://www.regexplanet.com/advanced/java/index.htmlで正規表現をテストし、対応する文字列を使用して Java 正規表現オブジェクトを作成することをお勧めします

于 2013-05-21T08:59:29.087 に答える