Agora que vimos como usar diferentes expressões regulares, vamos usá-las na prática e criar alguns programas. O primeiro programa será para validar se um e-mail é válido ou não, e o segundo será para validar se um número de telefone é válido ou não.

Validação de email em Python usando expressão regular.

Este programa receberá diversos e-mails de um documento csv, verificará se o endereço de e-mail fornecido é válido ou não, e os separará em uma lista que será apresentada em uma tabela, assim como na imagem abaixo.




Primeiro, encontraremos padrões em diferentes emails e, a partir disso, desenharemos uma expressão regular que será capaz de identificar emails.

Aqui está um exemplo de e-mails válidos:

joao23@gmail.com

joao.futi@gmail.co

python@gamil.co.ao

python@gmail.co.br

Agora, aqui está um exemplo de e-mails inválidos:

joao123gmail.com [@ is not present]

joao futi@gmail.com [espaço não pode estar presente]

@ python @ gamil.co.ao [o e-mail não pode começar com @]

.python @ gamil.co.ao [o e-mail não pode começar com um ponto (.)]


A partir dos exemplos acima, podemos observar os padrões de e-mail e criar uma expressão regular que nos permitirá avaliar os e-mails como válidos e inválidos.

Então teremos:

1 - A primeira parte contém os seguintes caracteres ASCII.

Letras maiúsculas (A-Z) e minúsculas (a-z) do inglês.

Dígitos (0-9).

Personagens ! # $% & ‘* + - / =? ^ _ `{| } ~

Personagem. (ponto, ponto ou ponto final), desde que não seja o primeiro ou o último caractere e não venha um após o outro.

2 - A parte do nome de domínio [por exemplo, com, org, net, ao, br] contém letras, dígitos, hifens e pontos.

Sendo assim teremos a seguinte expressão:

re.search(r'\b[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}\b',email)

Muito bem, agora que iniciamos a nossa expressão, iremos desenvolver o nosso programa.

Começaremos criando um novo arquivo python, nomeie-o como desejar, o meu vou nomeá-lo como regex_email.py e salvar o arquivo.
Em seguida, importe a biblioteca para o seu script.
e crie uma função e ela é chamada verificador_de_email, e passe um parâmetro para ela, assim como no exemplo abaixo.



Se você executar o trecho de código, a frase 'Usando Python', que foi passada como um parâmetro, será impressa.

Agora vamos criar uma condição que irá receber o e-mail e verificar se aquele e-mail satisfaz a expressão ou não, se satisfaz a expressão, imprimiremos o e-mail válido, caso contrário imprimiremos o e-mail inválido.




Agora, se você executar o programa, a mensagem 'Email inválido' será impressa, pois o parâmetro que passamos para a nossa função não atende à condição dentro dela.
Agora, a partir dos exemplos de e-mails, copie um válido e um inválido, para que possamos usá-lo como exemplo.


joao23@gmail.com

joao123gmail.com




Desta forma, acabamos de finalizar nosso programa que avalia se um e-mail é válido ou não. Agora observe e tente usar e-mails diferentes como exemplos ou crie suas próprias condições a partir da expressão a ser avaliada.

Programa Desktop

Para mais prática, se você já está familiarizado com o Tkinter, aqui está um aplicativo onde convertemos esse mesmo programa em um Desktop, programa de Vídeo com uma breve explicação em breve.

Crie um arquivo csv com o nome file.csv e escreva os e-mails no seguinte formato de linha: nome, telefone, e-mail


Depois disso crie um novo arquivo python e comece a escrever o código se tiver alguma dúvida sobre alguma etapa e apenas comente que estarei aqui para ajudar, enquanto o vídeo não sai.