devo controllare un indirizzo che mi arriva da un form

Codice PHP:
if (preg_match("/^[a-zA-Z0-9]{5,30}$/",$stringa)) {
echo 
"email valida\n";
} else {
echo 
"email non valida\n";

ma una cosa del genere non tiene ovviamente conto di caratteri tipo "@" "_" "-" "."

cosa va aggiunto per far si che tenga conto anche di quei caratteri?