将制表符分隔的数据拆分成数组

3

我需要将以制表符为分隔符的列数据拆分成多个数组,例如输入示例(第一行):abc<tab>def<tab>ghi

我能使用split('\t')来实现吗?

1个回答

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接