#!/usr/bin/env perl
use strict;
use warnings;
use Data::Dumper;
my %HoA;
while (<>) {
chomp;
if (index($_, ',') != -1) {
my @fields = split(/,/, );
push @{ $HoA{$fields[0]} }, $fields[5];
}
else {
warn "Line could not be parsed: $_\n";
}
} continue {
close ARGV if eof;
}
print Dumper \%HoA;
__END__
$ perl test.pl test.csv
$VAR1 = {
'seetha' => [
'rew'
],
'Anand' => [
'xyz',
'wer',
'ert',
'tre'
]
};
####
#!/usr/bin/env perl
use strict;
use warnings;
use Text::CSV;
use Data::Dumper;
my $csv = Text::CSV->new({ sep_char => ',' });
my %HoA;
while (<>) {
chomp;
if ($csv->parse($_)) {
my @fields = $csv->fields();
push @{ $HoA{$fields[0]} }, $fields[5];
} else {
warn "Line could not be parsed: $_\n";
}
} continue {
close ARGV if eof;
}
print Dumper \%HoA;
__END__
$ perl test.pl test.csv
$VAR1 = {
'Anand' => [
'xyz',
'wer',
'ert',
'tre'
],
'seetha' => [
'rew'
]
};
####
Anand,1,2,3,4,xyz
Anand,2,3,4,5,wer
Anand,3,4,4,4,ert
seetha,1,2,3,4,rew
Anand,2,2,2,2,tre