Boa tarde,
O código abaixo, que foi apresentado na aula de validação de telefones, ele não funciona quando lançamos um número de cel do BR, conforme exemplo abaixo:
numero = 5531996582584
+553 (19) 9658-2584
import re
class ValidaNumeroTelefone:
def __init__(self, numero):
numero = str(numero)
if self.valida_telefone(numero):
self.numero = numero
else:
raise ValueError("Número Inválido!!")
def valida_telefone(self, numero):
padrao = "([0-9]{2,3})?([0-9]{2})([0-9]{4,5})([0-9]{4})"
validacao = re.findall(padrao, numero)
if validacao:
return True
else:
return False
def formata_numero(self):
padrao = "([0-9]{2,3})?([0-9]{2})([0-9]{4,5})([0-9]{4})"
mascara = re.search(padrao, self.numero)
return "+{} ({}) {}-{}".format(mascara.group(1), mascara.group(2), mascara.group(3), mascara.group(4))
def __str__(self):
return self.formata_numero()