empty first element after split

Hi, the Perl Cookbook suggests in Recipe 11.10 "Reading and Writing Hash Records to Text Files" the following code to read a hash from a file: $/ = ""; # paragraph read mode while (<>) { my @fields = split /^([^:]+):\s*/m; shift @fields; # for leading null field push(@Array_of_Records, { map /(.*)/, @fields });