Section courante

A propos

Section administrative du site

La validation des courriels est un des problèmes les plus complexe à mettre en oeuvre lorsqu'on envoie un formulaire. Et pour cause, il faut tenir compte des règles suivantes :

A l'aide du code source Jython suivant, vous trouverez la réponse que vous souhaitez:

def BooleanToStr(value):
    if value:
        return "true"
    else:
        return "false"

def IsEmail(Email):
    if len(Email) == 0:
        return False
    I = 0
    while I < len(Email):
        if Email[I] in [" ","\t","\n","\r","(",")",":",",","/","'","\"","~","`","!","#","$","%","^","&","*","+","=","[","]","{","}","|","\\","?","<",">"]:
            return False
        I=I+1
    ArobasFound = 0
    I = 1
    while I < len(Email):
         if Email[I] == "@":
             ArobasFound=ArobasFound+1
             if ArobasFound == 1:
                 AfterArobas = I
         I=I+1
    if ArobasFound!=1:
        return False
    AfterArobas=AfterArobas+2
    while(AfterArobas < len(Email))&(Email[AfterArobas] != "."):
        AfterArobas=AfterArobas+1
    if(AfterArobas >= len(Email) - 1)|(Email[AfterArobas] != "."):
        return False
    else:
        return True

print "Courriel «abc» est valide: "+BooleanToStr(IsEmail("abc"))
print "Courriel «@» est valide: "+BooleanToStr(IsEmail("@"))
print "Courriel «@abc.abc» est valide: "+BooleanToStr(IsEmail("@abc.abc"))
print "Courriel «abc@gladir.com» est valide: "+BooleanToStr(IsEmail("abc@gladir.com"))
print "Courriel «abc@@gladir.com» est valide: "+BooleanToStr(IsEmail("abc@@gladir.com"))
print "Courriel «abc@gl][adir.com» est valide: "+BooleanToStr(IsEmail("abc@gl][adir.com"))

on obtiendra le résultat suivant:

Courriel «abc» est valide: false
Courriel «@» est valide: false
Courriel «@abc.abc» est valide: false
Courriel «abc@gladir.com» est valide: true
Courriel «abc@@gladir.com» est valide: false
Courriel «abc@gl][adir.com» est valide: false


Dernière mise à jour : Dimanche, le 16 octobre 2016