IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Extraction d'une adresse email à partir d'une chaine - Java


Sujet :

Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Par défaut Extraction d'une adresse email à partir d'une chaine - Java
    Bonjour a tous,

    Mon problème est le suivant, je dois extraire l'adresse email d'une chaine de caractère.
    L'adresse email se trouve dans un div.
    Dans ce div, se trouve du texte et l'adresse email qui est située généralement à la fin.
    J'arrive a récupérer tous ce div mais je bloque sur comment récupérer l'adresse email.
    Si quelqu'un à une piste. Je prend avec plaisir.
    Merci d'avance

    Cordialement

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 50
    Par défaut
    Tout dépend du String que tu récupéres...

    As-tu des délimiteurs autour de l'adresse e-mail?
    Tu dis "généralement à la fin". Tu ne récupères pas toujours le même type de String?
    Si non, ça risque d'être difficile de récupérer ce que tu veux...

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Par défaut
    Voila un exemple de String que je récupère.

    Code :
    <div class="jobDescription">
    <h1>Description de l'offre d'emploi</h1>
    <p>
    NOUS RECHERCHONS UN AGENT DE NETTOYAGE INDUSTRIEL POUR UN DE NOS CLIENTS SUR LE SECTEUR DES HERBIERS SPECIALSIE EN AGROALIMENTAIRE.EXPERIENCE EXIGEE EN NETTOYAGE INDUSTRIEL.POSTE PHYSIQUE.CONTACTEZ NOUS AU 02.51.61.09.00 OU ENVOYEZ VOTRE CV PAR MAIL A actual.lesherbiers@groupeactual.eu </p>
    </div>

    J'aimerais donc récupérer "actual.lesherbiers@groupeactual.eu"

    Merci de ton aide.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 50
    Par défaut
    Bah si tu es sur de récupérer à tous les coups ce genre de chaîne de caractères, tu dois t'en sortir sans trop de souci à base de "jolis" substring.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Par défaut
    Non impossible car ce qu'il y a avant l'adresse email est variable, je pense que la seule solution c'est les expressions régulières mais je n'arrive pas à en trouver une valide.

    Cordialement

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 50
    Par défaut
    Sincèrement, ça me semble impossible, même à coup d'expressions régulières.
    Si le texte change et peut contenir n'importe quel caractère, comment veux-tu faire la différence entre une adresse mail ou un bout de phrase contenant peut être un "." un "@" ou autre chose...

  7. #7
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 764
    Par défaut
    Effectivement, reconnaître de manière automatique une adresse mail dans un texte libre, ce n'est pas évident.

    Tu peux te baser sur la présence de l'arobase:
    Si tu détectes un '@' dans le texte, alors tu récupères toute la chaîne (sans espace) contenant le caractère '@'.
    Ceci pourrait se faire avec une expression régulière de la forme [^\s]*@[^\s]* (non testé).

    Cependant, cela ne garantira pas que tu auras effectivement récupéré une adresse mail.
    Le signe '@' est rarement utilisé en dehors des adresse mails, mais cela arrive. Par exemple, je suis récemment tombée sur une offre d'emploi de la part d'une entreprise nommée "Chemins de tr@verse".

  8. #8
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 127
    Par défaut
    Salut
    tu peut utiliser la méthode match avec l'expression suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String motif="^[_a-z0-9-]+(\\.[_a-z0-9-]+)*@[a-z0-9-]+(\\.[az]+)+$";
    donc essayer de faire

    bonne chance

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Par défaut
    Astartee --> Je viens de tester ton expression régulière sur la chaine que j'ai posté juste auparavant et ça marche.
    Merci beaucoup de ton aide !!

    totoz --> Merci aussi de ton aide!

    Pour la vérification de l'email, j'ai trouvé une librairie en java (org.apache.commons.validator)
    qui permet de passer l'email en paramètre et retourne un booléen en fonction de la validité de celui-ci.
    Donc j'utiliserais ce validateur après avoir passé l'expression régulière à ma chaine.
    Encore merci beaucoup!

    Cordialement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 13/08/2014, 19h14
  2. Récupérer les contacts à partir d'une adresse email
    Par mounim_taoufik dans le forum C#
    Réponses: 7
    Dernier message: 16/08/2011, 16h37
  3. Réponses: 2
    Dernier message: 05/03/2010, 14h15
  4. Réponses: 9
    Dernier message: 17/09/2008, 13h13
  5. [reseaux] [PERL] Trouver le nom d'une machine à partir d'une adresse IP
    Par LE NEINDRE dans le forum Programmation et administration système
    Réponses: 6
    Dernier message: 16/09/2008, 15h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo