Solución:
Usar RegExp#test
y arregla la expresión regular de esta manera:
if (/^[a-zA-Z0-9][email protected][a-zA-Z0-9]+.[A-Za-z]+$/.test($('#email').val())) { /* return true */ }
^^^^^^^^^^^^
Para admitir varios puntos en el nombre de dominio, puede envolver la primera parte con un grupo que no captura y establecer un 1 o más ocurrencias cuantificador:
/^[a-zA-Z0-9][email protected](?:[a-zA-Z0-9]+.)+[A-Za-z]+$/
^^^ ^^
los [A-z]
en realidad coincide con algunos símbolos que no son letras, y sin escape .
coincide con cualquier carácter excepto con caracteres de salto de línea. Tenga en cuenta que $
ancla la cuerda al final y +
coincide con 1 o más ocurrencias.
Hay otras expresiones regulares de correo electrónico por ahí, consulte ¿Validar la dirección de correo electrónico en JavaScript? si su escenario difiere del de OP.
Quizás no sea la publicación perfecta de @ tw_hoff personalizada.
/[email protected]+.[A-Za-z]+$/.test("[email protected]") //true
/[email protected]+.[A-Za-z]+$/.test("[email protected]") //false
Otra expresión regular que puede usar, que es un poco más corta, es [email protected]+..+
No es tan estricto pero comprueba el formato que es lo más importante.