我正在使用Jenkins文本查找程序插件,以便在某些条件为真时将构建标记为失败。其中一个字符串必须大于零才能将构建标记为失败:
0 errors | 0 warnings | 0 notes
我正在使用:
^[1-9]+ *errors [|] [1-9]+ *warnings [|] [1-9]+ *notes$
我希望如果错误,警告或注释的数量在1-9之间,则必须发生故障。但是,测试该规则仅在ALL至少为1时才有效。
如何管理正则表达式以便匹配:
1 errors | 0 warnings | 0 notes
至少有一个字符串必须为1.
我测试了它:
答案 0 :(得分:3)
如果字符串在三个字符串中的任何一个之前包含一个大于0的整数,那么您似乎想匹配一个字符串:errors
,warnings
和notes
。
使用
[1-9][0-9]*\s*(?:errors|warnings|notes)
请参阅regex demo。
注意:如果号码只能是一位数字,请使用[1-9]\s*(?:errors|warnings|notes)
。
<强>详情
[1-9]
- 1
到9
数字[0-9]*
- 任意0+位数\s*
- 0+空格
- (?:errors|warnings|notes)
- 其中一个子字符串。