The alternative to unpack is to use a regex (see perlre). Unpack and formats are both rather obscure bits of perl - you might find learning regexes more useful at this stage. In fact, it sounds as if you only need a very simple split on whitespace. For the bottom part of the screen, which is just pairs of fields and values, separated by whitespace, you could do
in reply to Re: Re: opposite of format?
in thread opposite of format?
my %fields = split(/\s+/, $line);
for each line. For the earlier bits, if you know that whitespace will be in the right place, you could do:
my ($last_name, $first_name, undef, $home_phone, %fields) = split(/\s+
|A massive flamewar beneath your chosen depth has not been shown here|