my %regs = ( "site1.com" => [ "price", qr{prices: (.+?)
}is ], "site2.com" => [ "cas", qr{cas: (\d+-\d{2}-\d+)}is ], ... ); ... foreach my $site (keys %regs) { ... # fetch data into $pagecontent... my ($key,$reg) = @$regs{$site}; $thisHash{$key} = $1 if $pagecontent =~ $reg; }