[英]Multi-line Regular Expression in Groovy not matching
我正在努力在 Groovy 中構建多行匹配正則表達式。
鑒於以下日志:
12:42:44,914 ma# ERROR [a.o.k.b.p.A] ********************* Es folgen aggregierte Fehler *********************
12:42:44,915 ma# ERROR [a.o.k.b.p.A] at.java.lang.NullPointerException
at a.o.k.b.s.AbstractSvc.buildFinalException(AbstractSvc.java:236)
(in 2 Items, z.B. 1114/00347, 1114/00537)
12:42:44,916 ma# ERROR [a.o.k.b.p.A] HTTP 400
(in 2 Items, z.B. 1128/01634, 1128/02616)
12:42:44,916 ma# ERROR [a.o.k.b.p.A] >>>>> 50 Polizzen polizziert, davon 4 Polizzen fehlerhaft mit 2 verschiedenen Fehler!
理想情況下,我想提取第一行和最后一行之間的所有行。
我正在嘗試通過訪問 Jenkins 日志
def logMatcher = manager.getLogMatcher('(?s).*aggregierte(.*)Polizzen polizziert.*')
if (logMatcher?.matches()) {
def result = logMatcher.group(1)
manager.addWarningBadge(result)
}
我希望它會給我一個粗略的匹配(包括第一行和最后一行的部分),但它不會在 if 塊中運行。
我在這里做錯了什么? 我在 regex101.com 上的測試表明這應該有效。 在 Jenkins 上,它只會在一行內匹配,例如正則表達式“. Es (. ) aggregierte Fehler.*”
問題是詹金的 goovy-postbuild-plugin 限制為單行,因為 daggett 對我的問題發表了評論。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.