in reply to Re: Data extraction from text file
in thread Data extraction from text file

Alternatively, you could set the input record separator ($/) to "-------", which simplifies things a bit:

$/ = "-------\n"; my @records; while (<>) { my @entries = map { /([^:]+):\s*(.*)/ } split /\n/; push @records, { @entries } if @entries; }