##
/^(?=.*?$pat1)(?=.*?$pat2)/; # Sets $1 and $2.
/^(?=.*?$pat1)(?=.*?$pat2)/; # Doesn't set $1 or $2.
####
$pat1 = "(foo)";
$pat2 = "(bar)";
/$pat1/ && /$pat2/;
/^(?=.*?$pat1)(?=.*?$pat2)/;
$pat1 = "(foo)";
$pat2 = "(baz)";
/$pat1/ && /$pat2/;
/^(?=.*?$pat1)(?=.*?$pat2)/;