Re: [HS] aide expression régulière

Top Page

Reply to this message
Author: Marc BERLIOUX
Date:  
To: Marc TERRIER
CC: ML Guilde
Subject: Re: [HS] aide expression régulière
Marc TERRIER a écrit :
> Marc BERLIOUX a écrit :
>
> [...]
>
>> // Split it into sections to make life easier
>> $email_array = explode("@", $email);
>> $local_array = explode(".", $email_array[0]);
>> for ($i = 0; $i < sizeof($local_array); $i++) {
>> if
>> (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$",
>>
>> $local_array[$i])) {
>> return false;
>> }
>> }
>
> Bonjour Marc,
>
> Il y a quelque chose qui me choque dans l'expression régulière
> ci-dessus :
>
> ^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$
>
>                                                             ^^

>
> Tu ne dois normalement pas avoir de '.' dans les éléments du tableau
> local_array, qui proviennent d'un explode avec le caractère '.' pris
> comme délimiteur.
>

bien vu !
le gars a du faire des copier-coller...
ça ne doit pas altérer le test toutefois

>> [...] elle refuse encore les adresses comme
>>
>> "Abc@???, "Fred Bloggs"@???,
>> "Joe.\\Blow"@???
>
> "Abc@??? : c'est normal que ce soit rejeté, parce que la
> vérification du nombre d'@ ne tient pas compte des éventuels
> guillemets, qui ne sont pris en compte qu'un peu plus loin.
>

oui, il faut que je le modifie.
"Abcdef"@??? ne matche pas non plus

>> mais elle accepte !#$%&'*+-/=?^_`.{|}~@example.com
>> net progrès !
>
> Super, en effet, comme adresse e-mail ! :-)
>

t'es sur de pas recevoir trop de spam au moins ...
l'adresse à donner à sa belle-mère par exemple 8-)
> En tout cas, une chose est sûre, c'est plus compliqué qu'on pourrait
> le penser de prime abord.
>

on devrait en faire un petit concours interne à la guilde.

> Cordialement,
>
> Marc
>

tout autant

--
Marc