拆分制表符将数据分隔为数组

时间:2013-08-29 13:14:00

标签: arrays perl split

我需要将数据拆分为由输入示例(第1行)的制表符分隔符分隔的列:abc<tab>def<tab>ghi,以便每列都放在不同的数组中。

我可以使用split('\t')实现此目的吗?

1 个答案:

答案 0 :(得分:4)

我不完全确定你想要做什么,因为你没有提供参考代码。但是,这至少会粗暴地做我认为你想要的。获取一个输入文件(更好地读取,假设它比提供的更长),并且对于保持输入的数组中的每一行,在\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