#!/usr/bin/perl use strict; use Data::Dumper; my %HoH; while () { next if (/^Surname/ or /^--/); s/(\w+)\s+(\w+\s?\w+?)\s+(\w+)//; $HoH{$1} = { $2 => $3 }; } print Dumper \%HoH; __DATA__ Surname L20, First Name L20, Town L20 -------------------------------------------------- Chaplin Charlie Basel Estevez Emilio Santa Manica Sarte Jean Paul Montmarte Rikard Frank Amsterdam Rodin Paul Montmarte