我正在尝试使用正则表达式解析日志文件,问题是一旦我打开 SingleLine 模式以便我可以包含多行错误,那么未来的匹配项将包含在第一个匹配项中而不是它们自己的匹配项中。
为了更好地解释,这里是一个日志文件的例子:
错误 16-08 11:09:59,015 - sdsdfsdfsdfsdfsdf
错误 16-08 11:09:59,015 - sdsdfsdfsdfsdfsdf
测试
错误 16-08 11:09:59,015 - sdsdfsdfsdfsdfsdf
错误 16-08 11:09:59,015 - sdsdfsdfsdfsdfsdf
信息 16-08 11:09:59,015 - sdsdfsdfsdfsdfsdf
测试 2
错误 16-08 11:09:59,015 - sdsdfsdfsdfsdfsdf
错误 16-08 11:09:59,015 – sdsdfsdfsdfsdfsdf
我正在使用以下正则表达式:
.{5} \d{2}-\d{2} \d{2}:\d{2}:\d{2},\d{3} - .+
这正确匹配每一行,但不包括已运行到新行的消息部分。但是当我打开单行模式时,只有一个匹配项(第一个),并且所有其他条目都包含在其中。
谁能指出我正确的方向?
谢谢 :)