我想使用正則表達式解析日誌文件,問題是一旦我打開SingleLine模式,以便可以包含多行錯誤未來的比賽包括在第一場比賽中,而不是他們自己的比賽。在正則表達式中匹配字符(包括換行符)直到找到下一個匹配
更好地說明,這裏是一個日誌文件的例子:
ERROR 11月16日至8日:09:59015 - sdsdfsdfsdfsdfsdf
ERROR 11月16日至8日:09:59015 - sdsdfsdfsdfsdfsdf
測試
ERROR 11月16日至8日:09:59015 - sdsdfsdfsdfsdfsdf
ERROR 16-08 11:09: 59015 - sdsdfsdfsdfsdfsdf
INFO 11月16日至8日:09:59015 - sdsdfsdfsdfsdfsdf
試驗2
ERROR 11月16日至8日:09:59015 - sdsdfsdfsdfsdfsdf
ERROR 16-08 11:09 :59015 - sdsdfsdfsdfsdfsdf
我使用正則表達式如下:
.{5} \d{2}-\d{2} \d{2}:\d{2}:\d{2},\d{3} - .+
這將正確匹配每行,但排除已經運行到新行的消息部分。但是當我打開單線模式時,只有一個匹配(第一個),並且所有其他條目都包含在其中。
任何人都可以指向正確的方向嗎?
謝謝:)
你想包含'INFO'也作爲錯誤信息的一部分嗎?如果你明確告訴我們你想要什麼和你不想要什麼,那將會更容易。另外,粘貼確切的日誌文件。我們可以從那個文件中想到更多的分隔符 – 2012-08-17 14:36:14