# Ugly to me... if (my ($this, $that, $some, $other) = $line =~ /(this).*(that).*(some).*(other)/) { do_it(); }; # Better, I think... if ($line =~ /(this).*(that).*(some).*(other)/) { my ($this, $that, $some, $other) = ($1, $2, $3, $4); do_it(); }