Mario Daka u rubrici Programiranje od
Kada iz mysql blob polja dobijemo sadržaj kao string koji ima hrpu svega i svačega, uključujući i email adrese (ispravno su napisane, tu nema greške), kako napraviti extract tj. izvuči iz stog stringa array u PHP-u sa svim mogućim email adresama?

Koju php komandu koristiti i koji regexp (regularni izraz) napisati?

Prijavite se ili registrirajte kako biste odgovorili na ovo pitanje.

1 odgovor

+6 glasa
Hrvoje Novak od
odabran od Mario Daka
 
Najbolji odgovor

Uzeo sadržaj iz BLOB polja ili putem CURL-a s neke web stranice - svejedno je. Bitno je da kao ulazni parametar imaš string. E onda možeš to ovako:

function extractAllEmails($txt) {
 
  // ovaj regexp će izvući sve mejlove ovakvog formata: a+b@google.com.sg
  $pattern = '/[a-z0-9_\-\+]+@[a-z0-9\-]+\.([a-z]{2,3})(?:\.[a-z]{2})?/i';
 
  // php-ov preg_match_all() vraća asocijativni array
  preg_match_all($pattern, $string, $matches);
 
  // popis svih izvađenih mejlova dobiješ kao array
  return $matches[0];
}
Rezultat možeš vidjeti sa var_dump(), a biti će ovako nekakav:
array (
  0 => 'test1+2@net.com',
  1 => 'test-2@t-com.hr',
  2 => 'test@example.com',
  3 => 'test@example.co.uk',
  4 => 'test@yahoo.com.sg',
)

Pitaj ako nešto nije jasno.

Slična pitanja

1 odgovor 393 👀
1 odgovor 484 👀
1 odgovor 789 👀
2 odgovora 2.0k 👀
1 odgovor 4.8k 👀
Ivana Basar 06.09.2020. pitanje u rubrici Internet od Ivana Basar
2 odgovora 820 👀
1 odgovor 321 👀
08.12.2013. pitanje u rubrici Programiranje od phper
1 odgovor 4.9k 👀
Znatko predstavlja

Umjetna inteligencija u službi prodaje

Zagreb
24. - 25. 10. 2024.

KUPI ULAZNICU
Znatko predstavlja

Najnoviji trendovi u IT industriji

Zagreb
28. i 29. 11. 2024.

KUPI ULAZNICU

14.0k pitanja

22.7k odgovora

8.5k komentara

1.6k korisnika

...