我正在尝试基于条件正则表达式匹配运行Jenkins构建步骤,但我无法弄清楚为什么它不匹配。
我正在使用这个正则表达式:.*iOS.
针对构建参数pmt_content。
这是pmt_content值:
<body><pre>^1234567890^abc123def132afd1213afas^iOS^Test User^test@abc.com^iPad 3^</pre><img src='https://cirrus.app47.com/notifications/5626a0bc9ac25b6ea7003f2f/img' alt=''/></body>
这是控制台日志告诉我它不匹配。
[PollMailboxTrigger] An email matching the filter criteria was found. (log)
Building in workspace /Users/jenkins/.jenkins/jobs/New Device Listener/workspace
Run condition [Regular expression match] enabling prebuild for step [Execute shell]
Regular expression run condition: Expression=[.*iOS.*], Label=[
<body><pre>^1234567890^abc123def132afd1213afas^iOS^Test User^test@abc.com^iPad 3^</pre><img src='https://cirrus.app47.com/notifications/5626a0bc9ac25b6ea7003f2f/img' alt=''/></body>]
Run condition [Regular expression match] preventing perform for step [Execute shell]
Finished: SUCCESS
显然pmt_content包含“iOS”。
我在www.regexplanet.com上测试了相同的值。
我做错了什么?
答案 0 :(得分:3)
由于我的标签数据中的换行符阻止了匹配,我遇到了类似的挫败感。如果在开始时可能有换行符,很难从您的转储中判断出来。无论如何,您可以尝试(?is).*iOS.*
。 Reference