Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Numeros a mais funciona

Ao criar um telefone com dígitos a mais, por exemplo, '21 99876 333333333' o sistema não aponta erro. É isso mesmo?

1 resposta
solução!

Faalaaa Rodolpho, tudo bem ?

O máximo de dígitos que o padrão apresentado vai conseguir retornar são 14. Pois, observe o que temos:

padrao = "[0-9]{2,3}[0-9]{2}[0-9]{4,5}[0-9]{4}"

No caso, dará 14 pois ele assumirá o maior quantificador de cada expressão, então: 3+2+5+4.

No exemplo que você nos apresenta, temos 16 dígitos, mas o programa só nos retorna 14. Pegou a ideia?

import re 
telefone = "2199876333333333"

padrao = "[0-9]{2,3}[0-9]{2}[0-9]{4,5}[0-9]{4}"
resposta = re.findall(padrao, telefone)
print(resposta)

Saída: ['21998763333333']

Vale ressaltar que esta regex de padrões para telefone que o professor apresenta ainda pode ser muito melhorada, mas o objetivo é nos mostrar o poder das expressões regulares dentro de nosso código, exemplificando assim, uma noção geral sobre elas no mundo de python.

Qualquer dúvida estou a disposição. Espero ter ajudado. Bons estudos!!!