Dans une liste de mails exclure les gmail - PHP - Programmation
Marsh Posté le 08-06-2019 à 15:46:58
Je connais pas PHP mais Perl c'est proche. Tu découpes ta chaîne au niveau des virgules (Perl: split), tu en fais un tableau, tu fais un grep inversé et tu réassembles le tout. Ou alors avec un regex, genre
| s/(?:(?:, )|^)[^@]+@gmail\.com//g | 
. Pas élégant mais ça marche.  
 
Marsh Posté le 08-06-2019 à 16:09:55
| Code : 
 | 
 
Marsh Posté le 08-06-2019 à 17:11:40
Et par esprit de contradiction : 
| Code : 
 | 
 
 
  
  
 
C'est juste pour proposer un array_filter, sinon est-ce que lorsqu'on connait la position de l’occurrence ce n'est pas plus rapide comme ça ?  ![[:bidem] [:bidem]](https://forum-images.hardware.fr/images/perso/bidem.gif) 
 
Marsh Posté le 10-06-2019 à 21:43:05
Bon, bn un grand merci. 
Je m'attendais pas à autant de réponse, toute aussi performante les unes que les autres. 
Avec quand même la dernier qui va très loin. 
Les regexp a tjs été un mystere pour moi, mais à chaqu fois je suis impression par leur efficacité. 
Merci à tous c'est vraiment top. 
Mon code fonctionne trop bien désormais
Marsh Posté le 08-06-2019 à 14:53:50
Bonjour,
 
 
J'ai un texte contenant une liste d'adresse mails
$mails = 'toto@gmail.com, julien@laposte.net, thomas@gmail.com, patrcik@hotmail.fr';
Je souhaite retirer toutes les adresses mails @gmail.com pour avoir que "julien@laposte.net, patrcik@hotmail.fr';
mais je n'arrive pas
Pourriez vous m aider ?