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 19/01/2007, 21h49   #1
Futur Membre du Club
 
Inscription : octobre 2003
Messages : 99
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 99
Points : 16
Points : 16
Par défaut Extraction d'emails avec ereg()

Salut !

J'ai un fichier au format texte contenant beaucoup d'informations y compris des emails que je voudrais extraire en PHP à l'aide de la fonction ereg(). Si vous avez une autre fonction pour y arriver plus facilement cela pourrait m'aider grandement. Ne vous préoccupez pas de la phase de manipulation du fichier(ouverture, fermeture, etc...).

Voila ce que j'ai déjà effectué:

// On admet que la variable $contenu contient le contenu du fichier texte

$emails = array();
ereg("^[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$]", $contenu, $emails);

Mon problème est que quand je fais var_dump($emails) il me retourne un tableau vide !

Merci pour votre aide.



Stéphane
pdtor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/01/2007, 23h07   #2
Modérateur
 
Avatar de Nesmontou
 
Homme Benjamin PREVOT
Architecte de système d'information
Inscription : septembre 2004
Messages : 1 571
Détails du profil
Informations personnelles :
Nom : Homme Benjamin PREVOT
Âge : 30
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Architecte de système d'information
Secteur : Finance

Informations forums :
Inscription : septembre 2004
Messages : 1 571
Points : 2 511
Points : 2 511
Salut, tu peux essayer ce code
Code :
1
2
3
4
5
6
<?php
$contenu = ... ; // Le contenu du fichier
$pattern = '`[a-zA-Z0-9_\.]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+`m';
preg_match_all($pattern, $contenu, $emails);
var_dump($emails[0]);
?>
Bon développement
__________________
Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement. Albert EINSTEIN

F.A.Q. : Java, PHP, (X)HTML / CSS

N'oubliez pas de cliquer sur le bouton Résolu en bas de page quand vous avez obtenu une solution à votre problème
Nesmontou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/01/2007, 10h01   #3
Futur Membre du Club
 
Inscription : octobre 2003
Messages : 99
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 99
Points : 16
Points : 16
Par défaut [RegEx] Extraction d'emails avec ereg()

Merci pour ton aide !

Mais le code retourne des doublons. Comment éviter ce problème ?

Code :
1
2
3
4
 
EXEMPLE:
 
array(27) { [0]=> string(23) "albatros@yahoo.fr" [1]=> string(23) "albatros@yahoo.com" [2]=> string(23) "albatros@yahoo.com" [3]=> string(20) "balaclava@yahoo.de" [4]=> string(20) "balaclava@yahoo.de" [5]=> string(20) "balaclava@yahoo.de" [6]=> string(16) "burt1@yahoo.fr" [7]=> string(16) "burt1@yahoo.fr" }
Merci !

Stéphane
pdtor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/01/2007, 10h59   #4
Modérateur
 
Avatar de Nesmontou
 
Homme Benjamin PREVOT
Architecte de système d'information
Inscription : septembre 2004
Messages : 1 571
Détails du profil
Informations personnelles :
Nom : Homme Benjamin PREVOT
Âge : 30
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Architecte de système d'information
Secteur : Finance

Informations forums :
Inscription : septembre 2004
Messages : 1 571
Points : 2 511
Points : 2 511
Salut, un petit tour dans la FAQ est le tour est joué : http://php.developpez.com/faq/?page=...b_suppdoublons
__________________
Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement. Albert EINSTEIN

F.A.Q. : Java, PHP, (X)HTML / CSS

N'oubliez pas de cliquer sur le bouton Résolu en bas de page quand vous avez obtenu une solution à votre problème
Nesmontou est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h50.


 
 
 
 
Partenaires

Hébergement Web