我正在尝试使用 perl 中的正则表达式将从“1. Virtualization”开始的值 grep 到“2.Virtualization”。1.Virutalization 和 2.Virtualization 之间有很多数据在一个数组中。
我的数组内容示例如下所示。
"1. 虚拟化容量管理 因性能不佳而导致的事件数量 0 999 10 5 4 容量计划的生产成本 10K 100K 80K 30K 10K 计划外购买容量的数量 0 999 15 10 5 2.虚拟化财务管理 事件数量由于性能不佳 0 999 10 5 4 产能计划的生产成本 10K 100K 80K 30K 10K"
我如何编写一个受控循环,它 grep 值介于 1 和 2 之间。在 1 和 2 之间,它甚至应该 grep 数据“容量计划 10K 100K 80K 30K 10K 的生产成本”并放在一个阵列位置。
我尝试编写一些代码无法理解如何编写受控循环。任何人都可以帮我解决这个问题。
foreach (@array) {
if ($_ =~ /\d+\.\s+Virtualization.*/) { #greps values starting in 1. Virtualizaton
push (@node_level1, "$_"); #stores in the node_level1
} elsif ($_ =~ /(\%\s+.*)/) { #greps values beginning with % Number of Nodes
# print "$_\n";
}
}
提前致谢。