我需要将以制表符为分隔符的列数据拆分成多个数组,例如输入示例(第一行):abc<tab>def<tab>ghi
。
我能使用split('\t')
来实现吗?
我不确定你想要做什么,因为你没有提供参考代码。但是,下面的代码可以粗略地实现我认为你想做的事情。读取一个输入文件(最好预设它比提供的文件长),对于输入数组中的每一行,在\t
处分割,并将第一个元素推送到@group1
等中。然后,你应该能够从那里打印出每个元素...
#!/usr/bin/perl
use warnings;
use strict;
open my $infile, '<', 'in.txt' or die "Can't read from $file: $!";
my (@group1, @group2, @group3);
while (<$infile>){
my @cols = split(/\t/);
push @group1, $cols[0];
push @group2, $cols[1];
push @group3, $cols[2];
}
print "$group1[0]\n";
print "$group2[0]\n";
print "$group3[0]\n";
输出:
abc
def
ghi