/ / Problemas con mi expresión regular en c #, funciona con javascript - c #, javascript, regex

Problemas con mi expresión regular en c #, funciona con javascript - c #, javascript, regex

Yo uso esta expresión regular para mi validación de correo electrónico

/.+@.+..+/i

No puedo hacer que funcione en mi servidor. Intenté esto hasta ahora.

var pattern = @"^.+@.+..+i$";
var pattern = @".+@.+..+i";

Obtengo 0 resultados probandolo (también en mi código). ¿Algunas ideas? No estoy seguro de si ayuda, pero el requisito es permitir a@b.c así que 1 char, one @ y al menos uno ".".

Respuestas

1 para la respuesta № 1

El problema parece ser el i; no "t significa" termina con i" (cual es i$), etc - en el javascript, el final .../i significa "no distingue mayúsculas y minúsculas", pero no hay nada allí para ser distingue entre mayúsculas y minúsculas, así que simplemente quite el i (de ambos estaría bien, pero de la C # al menos). También debe eliminar el ^ y $ que añadiste de la nada. Por completitud, RegexOptions.IgnoreCase es como ignoras el caso en .NET Regex.

var pattern = @".+@.+..+";

1 para la respuesta № 2

Sólo quite el i de la expresión regular y luego agregue los anclajes de inicio y final a su patrón,

@"^.+@.+..+$";

MANIFESTACIÓN


0 para la respuesta № 3

JavaScript:

function validateEmail(email) {
var re = /^(([^<>()[]\.,;:s@"]+(.[^<>()[]\.,;:s@"]+)*)|(".+"))@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}])|(([a-zA-Z-0-9]+.)+[a-zA-Z]{2,}))$/;
return re.test(email);
}

DO#:

bool validateEmail(string email)
{
var re = new Regex(@"^(([^<>()[].,;:s@""]+(.[^<>()[].,;:s@""]+)*)|("".+""))@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}])|(([a-zA-Z-0-9]+.)+[a-zA-Z]{2,}))$") ;
return re.IsMatch(email);
}

mira aquí :¿Validar la dirección de correo electrónico en JavaScript?