my $html = <10 more stuff Clay:20 glug Iron:30 blub Crop:40 stuff again EOT my %price; $price{ lc $1} = $2 while $html =~ m#(\w+):(\d+)#ig; my ( $lumber, $clay, $iron, $crop) = @price{ qw( lumber clay iron crop)};