[email protected] según el patrón que estás describiendo es válido!
Si queres que sea un email usá la función que te di yo, sea la de PHP o la de JS y no le busques la vuelta. Ahora, si es un campo email y buscas solo que contenga el @ y . estás haciendo una validación mediocre para las herramientas que tenés con ambos lenguajes...vos sabrás que usar.
Saludos.