@D3LLy hocamda kodu vermiş zaten. PHP 5 versiyonuyla beraber gelen filter_var fonksiyonunu deneyebilirsiniz.

filter_var($email, FILTER_VALIDATE_EMAIL);

__

Edit:

Hocam ayrıca preg_match sorun vermemesi lazım ama başka bir preg_match kodu daha veriyim. Bide bunu deneyin isterseniz.

if(preg_match('#^[a-z0-9.!\#$%&\'*+-/=?^_`{|}~]+@([0-9.]+|([^\s\'"<>]+\.+[a-z]{2,6}))$#si', $email))