あなたは私たちに多くを与えていませんが、エントリごとに2-linsを含むがこれに限定されないいくつかの仮定に基づいて、好みに合わせて構築できる簡単なソリューションを次に示します.
#!/usr/local/bin/perl
use strict;
use warnings;
use Data::Dumper;
my $lineno;
my @parts;
my $entryno;
my $line;
my @log;
while (<>) {
$line = $_;
chomp $line;
$lineno++;
if ( $lineno % 2 ) {
#It is line one of the entry
$entryno++;
@parts = split( /,\s*/, $line );
}
else {
push( @parts, split( /,\s*/, $line ) );
push( @log, [@parts] );
}
}
print Dumper(\@log);
それはすべて、データをどのように表示するかによって異なります。これが行うのは、各エントリのすべての要素を 1 つの配列項目として配置し、次に各エントリを配列項目として配置して、配列の配列を構築することだけです。