my @results = map { [$_ => domatch($_, $r)] } @strings; #foreach my $str (@strings) { foreach my $r (@results) { my ($str, $result) = @$r; print "Matching on $str\n"; #my $result = domatch($str,$r); if ($result) { print "Result:\n"; foreach my $k (keys %{$result}) { print "\t$k => $result->{$k}\n"; } } else { print "No match.\n"; } }