我需要将数据拆分为由输入示例(第1行)的制表符分隔符分隔的列:abc<tab>def<tab>ghi
,以便每列都放在不同的数组中。
我可以使用split('\t')
实现此目的吗?
答案 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