Handy one for all sorts of reasons, just don’t use it for evil : \. I also did an online working version of this function. It takes a string and returns an array of unique emails parsed out.
function parseEmailsFromString($text, $unique = true) { $mails=array(); preg_match_all('/[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(\\.[A-Za-z0-9-]+)*(\\.[_A-Za-z0-9-]+)/', $text, $result); for ($i = 0; $i < count($result[0]); $i++) { if($unique){ if(!in_array($result[0][$i], $mails)) $mails[] = $result[0][$i]; }else{ $mails[] = $result[0][$i]; } } return $mails; }