Version complète: sur le forum Webmaster Hub : Expression reguliere email
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
Siol
Bonjour,


je voudrais resortir d'une page de mon site tout les emails qu'elle contient.

Voila le code que j'ai pour l'instant et qui ne marche pas bien sur :

CODE
<?

$page = "http://127.0.0.1/Your/test.xml";

$fp = fopen("$page","r");

while (!feof($fp)) { $page .= fgets($fp, 4096); }

$emails = eregi("^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]{2,}[.][a-zA-Z]{2,4}$",$page,$regs);

echo $regs[1];

fclose($fp);

?>


D'ou vien l'erreur ?

Merci



Cordialement.
PhpTech
Bonjour Siol,

essayes ceci :

CODE
$matchs = array();

if (preg_match('/\\b[A-Z0-9._%-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}\\b/i', $page, $matchs)) {

    print_r($matchs);

}


Bon courage wink.gif
Siol
Merci pour la réponse, je vien d'essayer sa marche hormis le fait que ... sa n'en resort pas plus qu'un :/.
PhpTech
ho oui, excuse moi, voila qui devrait aller mieux :

CODE
$matchs = array();

if (preg_match_all('/\\b[A-Z0-9._%-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}\\b/i', $page, $matchs, PREG_SET_ORDER)) {

    print_r($matchs);

}
captain_torche
Essaye avec preg_match_all, et en finissant par
CODE
print_r($matchs[0]);
Siol
Et voila parfait merci beaucoup.
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.