An empty string is defined, but evaluates to false.
In reply to Re: if ($2) behaves differently than if (defined $2) by moritz in thread if ($2) behaves differently than if (defined $2) by walto