Votre question

[JAVA] Extraire adresse email d'une chaine

Tags :
  • Programme
  • Programmation
Dernière réponse : dans Programmation
22 Avril 2010 11:34:42

Bonjour à tous !
Voilà, mon problème est le suivant. Je dois développer un programme permettant de parser des pages web d'un site afin d'en extraire certaines informations. Le point sur lequel je bloque est la récupération des adresses emails. En fait, les adresses mails ne sont pas placées dans des balises réservées, mais juste dans une div, au milieu (ou plus généralement à la fin) d'une zone de texte. Je suis capable de récupérer toute cette zone de texte, mais je ne vois pas comment en extraire juste l'adresse email, qui est la seule chose qui m'intéresse dans tout ce texte.
Si quelqu'un a une piste pour me débloquer, je le remercie d'avance.
Cordialement

Autres pages sur : java extraire adresse email chaine

22 Avril 2010 11:43:33

PetitTigre -> Le problème est que je n'ai pas le choix dans le langage de programmation ... La société dans laquelle je travaille veut que mon programme soit écrit en Java. La solution que je cherche doit donc être nécessairement en Java ...
m
0
l
Contenus similaires
22 Avril 2010 11:50:35

-> PetitTigre : Merci pour le lien. Je vais regarder ce que je peux trouver, même si j'ai peur que ce tuto soit un peu trop généraliste pour mon problème.

Si quelqu'un d'autre a une idée ... je suis toujours preneur !
m
0
l
a c 232 L Programmation
22 Avril 2010 14:14:02

Salut,

Tu utilise une expression régulière pour récupérer l'adresse mail:
  1. Pattern p = Pattern.compile("[a-z0-9._-]+@[a-z0-9._-]{2,}\\.[a-z]{2,4}", Pattern.MULTILINE);
  2. Matcher m = p.matcher(taChaine);
  3. while (m.find())
  4. {
  5. System.out.println(m.group());
  6. }


(C'est de mémoire, il peut y avoir des petits problèmes)
m
0
l
22 Avril 2010 14:37:27

OmaR -> J'ai utilisé une méthode identique avec un matcher, et la méthode "group". L'expression régulière que j'utilise est un peu différente par contre. Elle est la suivante "[^\s]*@[^\s]*". Voilà, en attendant merci beaucoup pour votre aide. Bonne journée

Edit, pour OmaR : J'ai aussi testé ton expression régulière, et elle fonctionne aussi très bien :-)
m
0
l
a c 232 L Programmation
22 Avril 2010 15:30:00

L'expression régulière que tu utilises récupèrerait plein d'adresses qui ne sont pas valides.

Exemple .@. serait reconnu par ton expression alors qu'invalide, etc...
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS