my $rd = "\n"; my $fd = "\t"; my (%db, $p, $i); $/ = $rd; while () { chomp; ($_, @_) = split $fd; $db{$_} = [@_]; } for (sort keys %db) { $p = $db{$_}; for ($i = 0; $i <= $#$p; $i++) { print "\$db{$_}[$i] = \"$p->[$i]\";\n"; } } __DATA__ wordc stringf wordd stringg worde stringh stringi stringj worda stringa stringb stringc wordb stringd stringe