my $s = q(var1='1' var2="2" var3="'3'" var4='"4"'); while ($s =~ m/(\w+)=(["'])(.*?)\2/g) { print "(using quote $2): $1 = $3\n"; }