gpt4 book ai didi

perl - 使用 perl 将列转换为数组

转载 作者:行者123 更新时间:2023-12-01 06:18:15 25 4
gpt4 key购买 nike

需要将列放入数组。目前有下一个工作代码:

use Modern::Perl;
use Data::Dumper;

my @aa;
my @ab;
my @ac;

while(<DATA>) {
chomp;
my($x,$y,$z) = split /\s*:\s*/;
push(@aa,$x);
push(@ab,$y);
push(@ac,$z);
}
say Dumper \@aa, \@ab, \@ac;

__DATA__
col1a : col1b : col1c
col2a : col2b : col2c
col3a : col3b : col3c

是否存在一些更紧凑、更优雅的方式来完成上述操作?

最佳答案

也许,

while(<DATA>) {
chomp;
my @t = split /\s*:\s*/;
push(@aa, shift @t);
push(@ab, shift @t);
push(@ac, shift @t);
}
say Dumper \@aa, \@ab, \@ac;

或者你可以使用二维数组,

my @arr;
while(<DATA>) {
chomp;
my @t = split /\s*:\s*/;
push @{$arr[$_]}, $t[$_] for 0 .. $#t;
}
say Dumper \@arr;

关于perl - 使用 perl 将列转换为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21944308/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com