It's a greedy-match problem. If you don't want to match whitespace, say so:
($email) = /(\S+\@\S+)/. There are
more rigorous ways to check email addresses, but assuming you just need to find one set off by spaces, this should do it.
The PerlMonk tr/// Advocate