La función funciona perfectamente, lo que pasa es que le faltaba un ) al final:
Código PHP:
if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) {
echo "The e-mail was not valid";
} else {
echo "The e-mail was valid";
}
Saludos