print map {"$_\n"} ($str=~/\w+=/g); #### my $out=''; while ($str=~/(\w+=)\&/g){$out.=sprintf "%s\n",$1}; print $out; #### print map {"$_\n"} ($str=~/(\w+=)\&/g); #Thanks nferraz