0

myu データから特定の列を出力ファイルに読み込もうとしています。一度に 1 つの列を読み取ることに成功しましたが、一度に興味のある列をさらに読みたい (抽出したい列のリストがあります)別のtexファイルで)個々の列を抽出し、それらを結合して1つの別のファイルを作成するのは私にとって多忙になるため、単一の列を抽出しようとしたコードは次のとおりです。

#!/usr/bin/perl
use strict;
use warnings;

open (DATA, "<file.txt") or die ("Unable to open file");
my $search_string = "IADC512444";

my $header = <DATA>;
my @header_titles = split /\t/, $header;
my $extract_col = 0;

for my $header_line (@header_titles) {
  last if $header_line =~ m/$search_string/;
  $extract_col++;
}

print "Extracting column $extract_col\n";

while ( my $row = <DATA> ) {
  last unless $row =~ /\S/;
  chomp $row;
  my @cells = split /\t/, $row;
  print "$cells[$extract_col] ";
}

IADC512444 だけではなく、一度にすべての列を抽出する可能性はありますか? この問題を解決するのを手伝ってください、ありがとう

4

1 に答える 1