Précédent   Forum des professionnels en informatique > PHP > Langage > Regex
Regex Forum d'entraide sur les expressions rationnelles PHP. Avant de poster -> FAQ regex, Cours de regex et Sources de regex
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/04/2006, 11h50   #1
Membre du Club
 
Inscription : mai 2005
Messages : 209
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 209
Points : 64
Points : 64
Envoyer un message via MSN à tiyolx
Par défaut probleme d'expression reguliere

bonjour a tous,

je suis bloque avec mon expression reguliere, il semble avoir un probleme avec mes valeurs saisie ci-dessous.

un@un.fr

deux@deux.fr

trois@trois.fr

(^[a-zA-Z])([a-zA-Z0-9]+)(\.|-)?([a-zA-Z0-9]+)?@([a-zA-Z0-9]+)\.([a-z]){2,4})$

voila mon probleme, merci d'avance
tiyolx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2006, 12h20   #2
Membre éclairé
 
Avatar de XtofRoland
 
Inscription : août 2005
Messages : 361
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 361
Points : 340
Points : 340
une adresse internet peut aussi contenir des - et des _ tu les oublies je crois.
il faut aussi savoir que certaines adresses on plusieurs .
hjçh.hjjj_.jj-j@fg.hj-hj.be
ceci est en théorie une adresse valide
__________________
Le but de tout developpeur OO est de devenir une référence.
Mon avatar est un ambigramme, les curieux peuvent le retourner ;-)
Aider <> Faire a la place de!!!
XtofRoland est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2006, 12h45   #3
Expert Confirmé
 
Avatar de Maxoo
 
Maxime Pasquier
Expert PHP
Inscription : novembre 2004
Messages : 2 126
Détails du profil
Informations personnelles :
Nom : Maxime Pasquier
Âge : 28
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Expert PHP
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : novembre 2004
Messages : 2 126
Points : 2 602
Points : 2 602
Par défaut Re: probleme d'expression reguliere

Code :
/^[a-zA-Z][a-zA-Z0-9-_.]+@[a-zA-Z0-9-_.]+\.[a-z]{2,4}$/
moi je dirai ca plutot !!
__________________
Pour une bien meilleur lisibilité, utilisez la balise [code], c'est le [#] dans votre éditeur.
Mon espace Développez : mes Créations.


Rencontre & Carte des Membres de Developpez.com, version 3.0
Maxoo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2006, 13h01   #4
Membre éclairé
 
Avatar de XtofRoland
 
Inscription : août 2005
Messages : 361
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 361
Points : 340
Points : 340
Maxoo, bien que cette expression me suffirait largement, si on veut vraiment une expression reguliere valide, la tienne permet de finir sur un . ou d'en mettre deux d'affilé.

par exemple ton expr valide a..brol@skynet.be et brol.@skynet.be
__________________
Le but de tout developpeur OO est de devenir une référence.
Mon avatar est un ambigramme, les curieux peuvent le retourner ;-)
Aider <> Faire a la place de!!!
XtofRoland est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2006, 13h02   #5
Membre éclairé
 
Avatar de XtofRoland
 
Inscription : août 2005
Messages : 361
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 361
Points : 340
Points : 340
Remarque on ne peut te jetter la pierre (Pierre dixit le pere Noel est une ordure) meme phpBB les souligne ;-)
__________________
Le but de tout developpeur OO est de devenir une référence.
Mon avatar est un ambigramme, les curieux peuvent le retourner ;-)
Aider <> Faire a la place de!!!
XtofRoland est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2006, 13h09   #6
Expert Confirmé
 
Avatar de Maxoo
 
Maxime Pasquier
Expert PHP
Inscription : novembre 2004
Messages : 2 126
Détails du profil
Informations personnelles :
Nom : Maxime Pasquier
Âge : 28
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Expert PHP
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : novembre 2004
Messages : 2 126
Points : 2 602
Points : 2 602
Code :
/^[a-zA-Z]([a-zA-Z0-9]*[-_.]*)*[a-zA-Z0-9]@[a-zA-Z]([a-zA-Z0-9]*[-_.]*)*[a-zA-Z0-9]\.[a-z]{2,4}$/
et ca ?? ca marcherait mieux ??

mais tu vois d'un coté je préfere permettre pleins de trucs avec le regexp, parce que moi j'avais un nom de domaine des fois avec des - et dans la plupart des formulaire on me disait que c'était pas une adresse valide
__________________
Pour une bien meilleur lisibilité, utilisez la balise [code], c'est le [#] dans votre éditeur.
Mon espace Développez : mes Créations.


Rencontre & Carte des Membres de Developpez.com, version 3.0
Maxoo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2006, 13h42   #7
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
Et les apostrophes ?
http://www.remote.org/jochen/mail/info/chars.html
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2006, 13h56   #8
Expert Confirmé
 
Avatar de yiannis
 
Inscription : septembre 2005
Messages : 1 499
Détails du profil
Informations personnelles :
Âge : 47

Informations forums :
Inscription : septembre 2005
Messages : 1 499
Points : 2 563
Points : 2 563
Sans compter que nous allons (pour tous ceux qui utilise des regex pour valider des adresses mail) etre face a un probleme, l'internalisation des noms de domaines.

Je m'explique, ici en grece vous pouvez tres bien avoir un nom de domaine comme celui ci:
Citation:
γιάννις@ελλαδα.com
donc ma question est comment allons nous faire
juste un petit lien pour un site qui enregistre des domaines internationnaux
http://www.domainavenue.com/ml_check_iso-8859-7.htm
pour l'instant nous avons le grec, le turc, le coreen, le japonais et le chinois. Comment faire pour valider ces adresses?
__________________
"Ce besoin de remords qui précède le Mal, que dis-je ! qui le crée..." E. CIORAN
yiannis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2006, 14h02   #9
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
Arff ben dis donc...
Pourtant il est dit
Citation:
RFC2821 and RFC2822 state clearly that only 7bit ASCII characters are allowed in Internet mail addresses.
pfff
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2006, 14h05   #10
Membre du Club
 
Inscription : mai 2005
Messages : 209
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 209
Points : 64
Points : 64
Envoyer un message via MSN à tiyolx
Par défaut Merci de votre aide

re à tous

j'ai une changer que caractere et maintenant ca marche pour les adresses du type :

abc.abc.abc@nom.domaine
abc-abc-abc@nom.domaine
abc_abc_abc@nom.domaine

voila l'expression modifier

Code :
1
2
 
^[a-zA-Z][a-zA-Z0-9]+(\.|-|_)?([a-zA-Z0-9_\.-]+)?@[a-zA-Z0-9]+\.[a-z]{2,4}$
mais je suis tjs bloque avec les adresse de type :

abc.abc.abc@abc-nom.domaine
abc.abc.abc@abc.nom.domaine
abc.abc.abc@abc_nom.domaine


cordialement tiyolx
tiyolx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2006, 15h20   #11
Membre du Club
 
Inscription : mai 2005
Messages : 209
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 209
Points : 64
Points : 64
Envoyer un message via MSN à tiyolx
Citation:
Envoyé par Maxoo
Code :
/^[a-zA-Z]([a-zA-Z0-9]*[-_.]*)*[a-zA-Z0-9]@[a-zA-Z]([a-zA-Z0-9]*[-_.]*)*[a-zA-Z0-9]\.[a-z]{2,4}$/
et ca ?? ca marcherait mieux ??

mais tu vois d'un coté je préfere permettre pleins de trucs avec le regexp, parce que moi j'avais un nom de domaine des fois avec des - et dans la plupart des formulaire on me disait que c'était pas une adresse valide
j'ai essai ton exp. reg. mais je vois un probleme dans le cas ou un utilisateur tape : pre_.-sec_.-tro@pre_.-sec_.-tro.domaine

mais sinon elle fonctionne bien pour mon probleme, merci.
tiyolx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2006, 16h41   #12
Expert Confirmé
 
Avatar de Maxoo
 
Maxime Pasquier
Expert PHP
Inscription : novembre 2004
Messages : 2 126
Détails du profil
Informations personnelles :
Nom : Maxime Pasquier
Âge : 28
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Expert PHP
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : novembre 2004
Messages : 2 126
Points : 2 602
Points : 2 602
Mr N. suffit de rajouter les caractère que j'ai oublié avec les .-_ mais les ' c'est MAYBE et faut pas déconner, autant pas les utiliser.


tiyolx avec ton test d'email chez moi ca marche quand meme ... mais dis moi pas que tu as testé avec .domaine, car pour l'instant on test jusqu'a 4 caractère ... car j'en connais pas de domaine qui on plus de 4 caractères.
__________________
Pour une bien meilleur lisibilité, utilisez la balise [code], c'est le [#] dans votre éditeur.
Mon espace Développez : mes Créations.


Rencontre & Carte des Membres de Developpez.com, version 3.0
Maxoo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2006, 16h56   #13
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
Citation:
Envoyé par Maxoo
Mr N. suffit de rajouter les caractère que j'ai oublié avec les .-_ mais les ' c'est MAYBE et faut pas déconner, autant pas les utiliser.
Je sais bien, mais je suis malheureusement tombé sur un farfelu qui avait des quotes dans son email
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/04/2006, 13h34   #14
Expert Confirmé
 
Avatar de Maxoo
 
Maxime Pasquier
Expert PHP
Inscription : novembre 2004
Messages : 2 126
Détails du profil
Informations personnelles :
Nom : Maxime Pasquier
Âge : 28
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Expert PHP
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : novembre 2004
Messages : 2 126
Points : 2 602
Points : 2 602
c'est peut être juste une irlandais et pas un farfelu !!!

mais sinon je suis tout a fait d'accord avec toi, et il faudrait faire une regexp parfaite.

et est-ce que ca quelqu'un voit autre chose :
Code :
/^[a-zA-Z]([a-zA-Z0-9]*[-_.']*)*[a-zA-Z0-9]@[a-zA-Z]([a-zA-Z0-9]*[-_.']*)*[a-zA-Z0-9]\.[a-zA-Z]{2,4}$/
??
__________________
Pour une bien meilleur lisibilité, utilisez la balise [code], c'est le [#] dans votre éditeur.
Mon espace Développez : mes Créations.


Rencontre & Carte des Membres de Developpez.com, version 3.0
Maxoo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/04/2006, 14h58   #15
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
pour simplifier, j'aurais mis [a-z] et rendu la regexp insensible à la casse /..../i
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/04/2006, 22h12   #16
Expert Confirmé
 
Avatar de Maxoo
 
Maxime Pasquier
Expert PHP
Inscription : novembre 2004
Messages : 2 126
Détails du profil
Informations personnelles :
Nom : Maxime Pasquier
Âge : 28
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Expert PHP
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : novembre 2004
Messages : 2 126
Points : 2 602
Points : 2 602
bingo !!

Code :
/^[a-z]([a-z0-9]*[-_.']*)*[a-z0-9]@[a-z]([a-z0-9]*[-_.']*)*[a-z0-9]\.[a-z]{2,4}$/i
Je pense qu'une fois que ca aura abouti on pourra poster ce bout de code quelque part pour qu'une fois pour toute on gère toutes les adresses email et qu'on puisse rediriger les personnes qui cherche ce regexp la.
__________________
Pour une bien meilleur lisibilité, utilisez la balise [code], c'est le [#] dans votre éditeur.
Mon espace Développez : mes Créations.


Rencontre & Carte des Membres de Developpez.com, version 3.0
Maxoo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h06.


 
 
 
 
Partenaires

Hébergement Web