my @results1 = values %{imap->... 'SUBJECT', 'Subj1' ...}; my @results2 = values %{imap->... 'SUBJECT', 'Subj2' ...}; my @results3 = values %{imap->... 'SUBJECT', 'Subj3' ...}; my @all_results = (@results1, @results2, @results3); for my $h (@all_results){ # Your code manipulating $h as before... } #### # sets $num_results to size of @all_results array. my $num_results = @all_results;