[英]Adding regex to an array in Perl
我刚刚开始使用PERL做我正在做的脚本,以前从未使用过,而且在将一些值放入数组并计算总数时遇到了一些麻烦。
我有一个要解析的日志文件,并使用正则表达式在出现某些值时进行提取。 我想将这些值添加到数组中,然后在最后计算总值。 我要解析的文件看起来像
... completed_pop_count:0
...未完成:0
拨打电话
... completed_pop_count:2
...未完成:0
拨打电话
... completed_pop_count:2
...未完成:3
下一步通话
....并继续
这是我到目前为止所拥有的:
open (my $file, 'test.log');
while (<$file>){
my @array = /.*completed_pop_count: (.*)$/;
print @array;
}
close($file);
输出是这样的
022 .....
在我看来,所有值都在数组的单个元素中。 但是,我需要将它们分开放置,以便可以计算总和。
如果要向数组添加元素,请使用push @arr, "element"
。
use List::Util qw(sum);
my @array;
while (<$file>){
push @array, $1 if /.*completed_pop_count: (.*)$/;
}
print "@array\n";
print sum(@array), "\n";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.