Extrator de e-mails em PHP + expressões regulares [ferramenta]

Há algum tempo estava estudando expressões regulares e decidi fazer um e-mail extractor. A ideia é bem simples, coloque um texto ou URL com emails e extraia apenas as strings que são emails.

Código básico

//Oi, eu sou um email ->
/[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+)*)+\\.[a-z]{2,}/i

Olha que coisa mais linda! Quer receber o código completo e funcional? Comenta pedindo 😀

<?php
if (!empty($text)) {
  $reg = "/[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+)*)+\\.[a-z]{2,}/i";
  $res = preg_match_all($reg, $text , $matches);
  $num_email = 0;
  $separador = $_POST['separador'];  
  echo "<textarea>";
  if($res) 
  {
    foreach(array_unique($matches[0]) as $email) {
      echo ''.$email.'';
      echo $separador;
      $num_email++;
    }     
  echo "</textarea>";
 	echo "Contagem de emails<br />";
	echo "total - ".$num_email."<br >";
	echo "Autor - Adriano Ponte";	
  }else{
  echo "Sem resultados :(";
  }
}
?>

Que saber mais? Veja aqui (preg_match_all)

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *