Thank you for taking the time to assist me with this.I want to learn the HOH method, so I will try to use that in my solution with your aid.Using "print Dumper \%hash;" works and te HOH has all the info I need but I can't seem to print it out in a format I want .
name
device(s) <space> year
My entire code is
#!/usr/bin/perl
use strict;
use Data::Dumper;
my $infile = 'test_file.txt';
open (IN,'<',$infile) || die ("Could not open $infile : $!");
my $name;
my %hash = ();
while (<IN>){
s/^\s+|\s+$//g; # trim leading/trailing spaces
my ($col1,$col2,$col3) = split /\s+/,$_,4;
if ($col1 eq 'name'){
$name = $col2;
} elsif ($col1 eq 'device')
{
push @{$hash{$name}},$col2,$col3;
}
else
{
# skip line
}
##
##
}
close IN;
#print Dumper \%hash;
foreach my $line (keys %hash)
{
print "$line\n";
foreach my $sit (keys %{$hash{$line}})
{
print "$hash{$line}{$sit}\t$sit";
}
}
DATA
name Brian
device Ipad 2001
device iphone 2000
number 2
name Jason
device computer 2011
number 1
name Andrew
device ipad 1999
device iphone 1990
|