perl从子例程中单独返回数组中的所有元素

时间:2014-07-31 17:47:00

标签: perl return elements subroutine

这里的总perl noob。

我正在尝试编写一个程序:

  1. 在子程序中处理几组单词(一个数组=一组)
  2. 将结果返回到一个巨大的数组
  3. 稍后在程序中修改巨大的数组
  4. 目前,我的巨型数组是一个数组数组,使用起来很麻烦。有什么方法可以将结果作为单个元素返回,而不是数组引用?较小的数组长度可变。

    所以说处理后我的数组结果如下:

    @array=["A", "B", "C", "D"];
    

    我想:

    @giganticarray=["array1stuff", "etc", "A", "B", "C", "D", "array3stuff", "etc"];
    

    我试过了:

    foreach (@array){
            return $_;
    }
    

    和这个

    for (my $n=scalar (@array); $n>0; $n--) {
            return $array[$n];
    }
    

    我在网上找不到任何信息,但可能是因为我在寻找错误的东西。我很感激任何帮助。

1 个答案:

答案 0 :(得分:0)

展平数组数组,只需要

@giganticarray = map { ref $_ ? @$_ : $_ } @giganticarray

但是如果你首先以你想要的方式生成数组会更加清晰。向我们展示您的代码,我们可以向您展示如何