UPDATE - first post didn't keep them in named variables
use strict;
use Data::Dumper;
my @four;
my @all;
my $count = 0;
while (<DATA>) {
s/\s+$//;
push @four , $_;
$count++;
if ( ($count % 4) == 0) {
my %hash;
@hash{'name','address','phone','fax'} = @four;
push @all , \%hash;
@four = ();
}
}
print Dumper(\@all);
__DATA__
name1
address1
phone1
fax1
name2
address2
phone2
fax2
original post below
use strict;
use Data::Dumper;
my @four;
my @all;
my $count = 0;
while (<DATA>) {
s/\s+$//;
push @four , $_;
$count++;
if ( ($count % 4) == 0) {
push @all , [ @four ];
@four = ();
}
}
print Dumper(\@all);
__DATA__
name1
address1
phone1
fax1
name2
address2
phone2
fax2