How can I partition a Perl array into equal sized chunks?

后端 未结 9 1478
眼角桃花
眼角桃花 2020-12-15 08:01

I have a fixed-sized array where the size of the array is always in factor of 3.

my @array = (\'foo\', \'bar\', \'qux\', \'foo1\', \'bar\', \'qux2\', 3, 4, 5         


        
9条回答
  •  佛祖请我去吃肉
    2020-12-15 08:35

    Another answer (a variation on Tore's, using splice but avoiding the while loop in favor of more Perl-y map)

    my $result = [ map { [splice(@array, 0, 3)] } (1 .. (scalar(@array) + 2) % 3) ];
    

提交回复
热议问题