【问题标题】:Split tab delimited data into arrays将制表符分隔的数据拆分为数组
【发布时间】:2013-09-01 22:51:03
【问题描述】:

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

我可以使用split('\t') 实现这一点吗?

【问题讨论】:

    标签: arrays perl split


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-12-05
      • 1970-01-01
      • 2021-02-24
      • 1970-01-01
      • 2023-02-24
      • 1970-01-01
      相关资源
      最近更新 更多