我正在尝试解析一个日志文件,其中包含许多带有单词http
的行,后跟引发异常的类和方法,如下所示:
ERROR
我正在尝试编写一个正则表达式,该表达式将匹配包含2016-08-18 19:38:17 ERROR [KUHOMNYXARCH] [ 47] [c43215c4-acfd-491b-b418-653b53195be3] [MultiFormatRoiStreamer.GetImageRoi]
2016-08-18 19:39:46 ERROR [KUHOMNYXARCH] [ 46] [10ba0a0e-0ede-4d0e-a582-d7e811bb7ade] [ExceptionHandlingBehavior.ProvideFault]
但不包含ERROR
和MultiFormatRoiStreamer.GetImageRoi
的所有行。我尝试使用否定前瞻断言没有奏效:
ExceptionHandlingBehavior.ProvideFault
有关于此的任何想法吗?
答案 0 :(得分:2)
您可以使用它来查找行
(?m)^.*?ERROR[^\S\r\n]+(?:(?!MultiFormatRoiStreamer\.GetImageRoi|ExceptionHandlingBehavior\.ProvideFault).)+$
它使用多行模式(?m)
扩展:
(?m)
^
.*?
ERROR [^\S\r\n]+
(?:
(?!
MultiFormatRoiStreamer\.GetImageRoi
| ExceptionHandlingBehavior\.ProvideFault
)
.
)+
$