Bonjour à tous,
Je viens ici car je n'arrive pas à résoudre un problème de syntaxe pour mon expression régulière suivante :
Je cherche à récupérer des adresses mails dans un texte quelconque.
Voici le code :
avec :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 $pattern = '/[a-z0-9]+((-|_|\.)?[a-z0-9]+)*@[a-z0-9]+((-|\.)?[a-z0-9]+)*\.[a-z]{2,4}+/'; $result = preg_match_all( $pattern, $source, $matches ); echo '<pre>'; print_r($matches); echo '</pre>';
Cela ne fonctionne pas alors qu'il devrait me retourner l'adresse : tdi7@hotmail.fr
Code : Sélectionner tout - Visualiser dans une fenêtre à part $source = 'uvessesprodebsiozfela>tdi7@hotmail.fr';
avec :
Cela fonctionne bien puisque je récupère le mail voulu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part $source = 'uvessesprodiozfela>tdi7@hotmail.fr'; //(3 caractère supprimés dans la première partie de la chaine)
J'en déduit que mon expression régulière ne fonctionne pas bien... mais j'ai beau chercher... je n'arrive pas à trouver mon erreur.
Merci à vous pour votre aide.
Partager