在触发器运算符上需要更多帮助以下是我的示例数据:
LS SPID ASP SPID
3-59 MGW05
SLC ACL PARMG ST SDL SLI
0 A1 17 C7STH-1&&-31 MSC19-0/RTLTB2-385
LS SPID ASP SPID
3-618 ETRC18
SLC ACL PARMG ST SDL SLI
0 A2 0 C7ST2C-4 ETRC18-0/RTLTB2-417
1 A2 0 C7ST2C-5 ETRC18-0/RTLTB2-449
END
我感兴趣的数据从字符串“LS SPID ASP SPID”开始,到下一个“LS SPID ASP SPID”或END(如果没有下一个LS 行)结束。是否可以使用触发器运算符来获得这个?我将此数据读入数组(@linesread),然后尝试使用以下代码循环遍历数组,但它不起作用。问题是因为我不能在同一条线上循环两次吗?还有其他解决方案吗?
PS:我根据需要使用 ... 运算符。
foreach (@linesread) {
if (/^LS\s*SPID\s*ASP\s*SPID$/ ... (/^LS\s*SPID\s*ASP\s*SPID$/ || /^END$/)) {
print "$. \t $_\n";
}
}