Access de Xavi
Bienvenido(a), Visitante. ¿Que quieres hacer? ingresar o registrarse.
¿Perdiste tu email de activación?
Septiembre 10, 2010, 06:04:48
Registrate para acceder a las áreas restringidas

Ingresar con nombre de usuario, contraseña y duración de la sesión
Buscar:     Búsqueda Avanzada
Debido a la intrusión de spammers, se ha desactivado la posibilidad de introducir mensajes. Tambien se han baneado las IP's con múltiples usuarios. Si algún usuario 'legal' ha resultado afectado, que me lo comunique (seguro que encuentra la forma)
505 Mensajes en 445 Temas por 1505 Usuarios
Último usuario: insurance431664798
* Inicio Ayuda Ingresar Registrarse
+  Access de Xavi
|-+  Access: Por temas
| |-+  Correo
| | |-+  Comprobar dirección de correo
0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Comprobar dirección de correo  (Leído 4355 veces)
xavi
Administrador
*****
Sexo: Masculino
Mensajes: 442



« en: Octubre 22, 2007, 20:49:39 »

Palabras clave: correo, dirección, email, valido
Autor: Rubén Vigón


Para comprobar que una direccion MAIL es valida.

Código:
Public Function IsEmail(ByVal strEmail As String) As Boolean
Dim strTemp As String
If Not InStr(strEmail, "@") > 0 Then
    IsEmail = False
   Else
    If Not InStr(strEmail, ".") > 0 Then
        IsEmail = False
       Else
        If Not Len(left(strEmail, InStr(strEmail, "@") - 1)) >= 3 Then
            IsEmail = False
           Else
            strTemp = Mid(strEmail, InStr(strEmail, "@") + 1, Len(strEmail))
            If Not Len(left(strTemp, InStr(strTemp, ".") - 1)) >= 3 Then
                IsEmail = False
               Else
                If Not Len(right(strTemp, Len(strTemp) - InStr(strTemp, "."))) >= 2 Then
                    IsEmail = False
                   Else
                    IsEmail = True
                End If
            End If
        End If
    End If
End If
End Function
En línea
xavi
Administrador
*****
Sexo: Masculino
Mensajes: 442



« Respuesta #1 en: Noviembre 17, 2009, 14:08:43 »

A raíz de un problema con ciertas direcciones de correo del estilo nombre.apellido@es.dominio.com, he modificado ligeramente la función. Ha salido esto:

Código:
Public Function IsEmail2(ByVal strEmail As String) As Boolean
    ' Adaptación de Xavi de la función de Rubén Vigón
   
    Dim strTemp As String
    ' verificamos que contiene un @
    If Not InStr(strEmail, "@") > 0 Then
        ' si no lo contiene no es válido
        IsEmail2 = False
       Else
        ' verificamos que no contiene un segundo @
        If InStr(InStr(strEmail, "@") + 1, strEmail, "@") > 0 Then
            IsEmail2 = False
           Else
            strTemp = Mid(strEmail, InStr(strEmail, "@"), Len(strEmail))
            ' lo contiene. verificamos si contiene un punto despues del @
            If Not InStr(strTemp, ".") > 0 Then
                ' si no lo contiene no es válido
                IsEmail2 = False
               Else
                ' lo contiene, verifiquemos que, por detrás del último punto, existen al menos dos caracteres
                If Len(strEmail) - InStrRev(strEmail, ".") < 2 Then
                    IsEmail2 = False
                   Else
                    IsEmail2 = True
                End If
            End If
        End If
    End If
End Function
En línea
Páginas: [1] Ir Arriba Imprimir 
« anterior próximo »
Ir a:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.2 | SMF © 2006-2007, Simple Machines LLC XHTML 1.0 válido! CSS válido!