Para fazer a validação simples em um endereço de e-mail utiliza a seguinte expressão regular(Os escapes duplos são para aspas duplas, use escapes únicos para aspas simples):
^([a-z0-9_]|\\-|\\.)+@(([az0-9_]|\\-)+\\.)+[a-z]{2,4}$
Para chamar esse código você deve usar o eregi(). O ereg() não funcionará porque a pesquisa precisa ser sem distinção entre maiúsculas e minúsculas. Então, utilize a função da seguinte maneira:
if(!eregi(“^([a-z0-9_]|\\-|\\.)+@(([az0-9_]|\\-)+\\.)+[a-z]{2,4}$”,”$email”)){
die(“E-mail invalido.”);
}
A expressao regular anterior eh uma expressao regular de verificação de e-mail padrão, compatível com PHP, mas não eh a maneira mais segura de verificar um endereço de e-mail, ou seja, ela somente verifica se o padrão esta correto. Por exemplo alguém@ninguem.abc seria validado pois esta no formato correto, mesmo que ele não exista efetivamente.
A verificação pelo PHP é interessante para se certificar que o e-mail esta no padrão correto antes de inserir no banco de dados, porem, para uma melhor interface com o usuário, faça também a verificação via JavaScript.
[...] Esse é bem simples, deve ser melhorado para consultas por e-mails válidos, você também pode pegar a lógica do post feito pelo Couto usado no PHP sobre isso, Clicando Aqui. [...]
Muito bom cara… você tem pra CPF e pra CNPJ?
————–
O Tempo Não Para
otemponaopara.wordpress.com
Muito bom, estou procurando artigos sobre regexp em javascript, para criticas sem submit do form.
“otemponaopara”> CPF e CNPJ tem o algoritmo para validar por calculo, no gogole vc acha.
Me ajudou, ótimo para vaidações de primeiro escalão.
Só concerte uma coisa:
if(!eregi(“^([a-z0-9_]|\\-|\\.)+@(([az0-9_]|\\-)+\\.)+[a-z]{2,4}$”,”$email”)){
die(“E-mail invalido.”);
}
no bloco após o arroba incluir um hífem entre o az ficando então a-z, assim a validação aceitará tanto números quantos caracteres na parte de domínio do email, pois antes só estava aceitando números valeu.
Não sei o que aconteceu mais não consegui validar com essa expressão, segue a que eu usei:
eregi(“^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3})$”,$_POST['email'])
Usei a validação do Mayron e funcionou perfeitamente. Abraço