Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyszukiwanie maili w treści wiadomości
Forum PHP.pl > Forum > PHP
Resurrection
Witam.
Odczytuje za pomocą IMAP wiadomości następnie z każdej z nich chciałbym wyselekcjonować adresy email znajdujące się w jej treści. Wokół adresów email mogą znajdować się różne znaki które nie poprzedza spacja np: gg<wojtek@o2.pl;>
więc odpada wyszukanie string w którym znajduje się znak "@". Czy może ktoś ma pomysł w jaki sposób rozwiązać ten problem? Proszę o wskazówki.
Wazniak96
Taki skromny kodzik ode mnie smile.gif
  1. <?php
  2.  
  3. $str = "<>cos.tam@o2.pl;;;.innee@gmail.com;99dsd";
  4.  
  5. $str = preg_split("/[^[:alnum:]@\.]/", $str);
  6.  
  7. foreach($str AS $mail)
  8. {
  9. $mail = trim(ltrim($mail, ".@"), ".@");
  10. if(!empty($mail) AND strpos($mail, '@'))
  11. $mails[] = $mail;
  12. }
  13.  
  14. print_r($mails);
Resurrection
mogą być jeszcze adresy tego typu tomek_zyg@domek.warszawa.pl lub tomek-zyg@domek.warszawa.pl . W tych przypadkach to wyrażenie nie funkcjonuje poprawnie....
trueblue
Spróbuj:
  1. $str = preg_split("/^([a-zA-Z0-9_\.\-\+%])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/", $str);

To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.