perl – 如何在另一个数组中存储变量数组?

perl – 如何在另一个数组中存储变量数组?,第1张

概述我有一个关于在另一个数组中保存数组的perl查询.在( How do I add an array ref to the middle of an existing array in Perl?)之前询问了一个相关的查询,但我找不到我的答案,所以我在这里发帖. 我有10个文本文件,每个文件大约有100行文本.我想选择包含“重要”一词的所有行.执行此 *** 作的脚本如下.我在数组中保存包含单词“impor 我有一个关于在另一个数组中保存数组的perl查询.在( How do I add an array ref to the middle of an existing array in Perl?)之前询问了一个相关的查询,但我找不到我的答案,所以我在这里发帖.

我有10个文本文件,每个文件大约有100行文本.我想选择包含“重要”一词的所有行.执行此 *** 作的脚本如下.我在数组中保存包含单词“important”的所有行.所以,从每个文本文件中,我得到一个数组.我想将所有这些数组保存在另一个数组中?

my @List_of_files = ("input1.txt","input2.txt","input3.txt"); my $List_of_files = @List_of_files;for ($file=0,$file<$List_of_files; $files++){ open input_file,"$List_of_files[$file]" or dIE "can't open $file : $!"; my @input = <input_file>; my $size = @input; for ($num=0; $num<$size; $num++){  if ($input[$num] =~ m/important/) {   push (@sub_array,$output);  } } close input_file; push (@main_array,\@sub_array);   }

@sub_array的元素每次都会更改,因此,如何保留所有sub_arrays的元素?我希望最终输出为@main_array,其中包含3个元素,每个元素都是一个元素数组(包含单词“important”的行)

任何帮助都非常感谢TIA

解决方法 我会对bvr略有不同.但他的观点仍然有效.

# use qw() to define line with less punctuationmy @List_of_files = qw(input1.txt input2.txt input3.txt);my @lines_in_file;foreach my $file (@List_of_files) {  open(my $in,'<',$file) or dIE "can't open $file : $!";  # declare an array,not a scalar  my @lines;  # idiomatic use of while(<>) puts each record into $_  while (<$in>) {    # /../ works on $_ by default.    # Postfix condition is more readable    push @lines,$_ if /important/;  }  # Take reference to array and push it onto main array  push @lines_in_file,\@lines;}
总结

以上是内存溢出为你收集整理的perl – 如何在另一个数组中存储变量数组?全部内容,希望文章能够帮你解决perl – 如何在另一个数组中存储变量数组?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1213656.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存