Also das Format einer EMail wird durch die
RFC822 bzw. deren Nachfolger
RFC2822 (der Name ist KEIN Zufall) definiert. Dies ist die einzige "gültige" Quelle. Wie Du beim Studium bemerken wirst, ist die Validierung einer Email keine triviale Aufgabe (z.B.: '"ich@home" <zeitung@wcm.at>' wäre gültig, trotz doppeltem '@').
Unter Perl gibt es das Modul
Mail::RFC822::Address, das Dir die Arbeit abnimmt. (Seht Euch die Regex an!)