none
Validar datos con Expresiones regulares

    Pregunta

  •  

    Hola, en mi aplicación asp.net 2.0 necesito validar en campo texbox que el email introducido sea correcto, pero debo hacerlo desde el servidor, no utilizando el control de validación RegularExpressionValidator .

     

    Para ello lo hago manualmente mediante el siguiente codigo:

     

    Dim reVal As New RegularExpressionValidator

    reVal.ValidationExpression = "\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"

    reVal.ControlToValidate = Me.MiLabel.ID

    reVal.Validate()    'Aqui es donde salta la excepcion

    If Me.IsValid Then

         'Todo ha ido bien, el email introducido es correcto

     

    Al invocar al método Validate() salta una excepcion del tipo "Referencia de objeto no declarada como instancia de un objeto".

     

    ¿Como debería utilizar la expresion regular?

     

    Gracias. Saludos.

    Borja.

    viernes, 14 de diciembre de 2007 8:56

Todas las respuestas

  • Prueba a ver con:

     

    reVal.ControlToValidate = "MiLabel"

     

     

    viernes, 14 de diciembre de 2007 10:02
  • No se si te funcionara este validador directamente por código.

     

    Me parece que la forma más correcta sería validarlo tu directamente con una expresión regular.

     

    Bloque de código

     

    System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(@"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*");

     

    if (reg.IsMatch(TextBox1.Text))

    Label1.Text = "true";

    else

    Label1.Text = "False";

     

     

     

     

    El ejemplo es en C# pero no es nada complicado para pasarlo a VB  .

     

    Si la respuesta ha sido de utilidad marca la como correcta.

     

    Saludos.

    viernes, 14 de diciembre de 2007 11:59