从Perl脚本中省略或排除正则表达式匹配

Fat*_*mon 1 regex perl

嗨,我想在文件中搜索与此类似的内容:

Start Cycle
report 1
report 2
report 3
report 4
End Cycle
Run Code Online (Sandbox Code Playgroud)

....继续......

我想搜索"Start Cycle",然后从中提取报告1并报告3.我的正则表达式看起来像这样

(Start Cycle .*\n)(.*\n)(.*\n)(.*\n)
Run Code Online (Sandbox Code Playgroud)

上面的正则表达式选择开始循环和接下来的三行..但我想省略我的结果中的第三行.那可能吗?或者任何更简单的perl脚本都可以完成?我期待一个结果,如:

Start Cycle
report 1
report 3
Run Code Online (Sandbox Code Playgroud)

Eth*_*her 5

以下代码打印Start Cycle和之间的奇数行End Cycle:

foreach (<$filehandle>) {
    if (/Start Cycle/ .. /End Cycle/) {
        print if /report (\d+)/ and $1 % 2;
    }
}
Run Code Online (Sandbox Code Playgroud)