Perl:RegEx:ManyLines:在数组的开头和结尾之间存储文本

时间:2015-05-13 10:23:27

标签: regex perl

我正在开发一个Perl脚本,其中一个脚本函数是检测两个终端之间的多行数据并将它们存储在一个数组中。

my @statistics_of_layers_var;
for( <ALL_FILE> ) {
   @statistics_of_layers_var = ($slurp =~ /(Statistics\s+Of\s+Layers)(\n|.)*(Summary)/gm );
   print @statistics_of_layers_var;

给定的数据应该是

Statistics Of Layers
Line#1
Line#2
Line#3
Summary

在这段代码中,代码成功打印图层统计摘要,但无法在这两个终端之间打印所有数据。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

(Statistics\s+Of\s+Layers)((?:\n|.)*)(Summary)

试试这个。看看演示。

https://regex101.com/r/mT0iE7/7