1
resposta

Validação com REGEX e ajuste na formatação

O exemplo utilizado no vídeo não trata se o usuário digitar o cep com "-" o que é muito comum de ser feito, por isso fiz uma validação utilizando o regex, e na hora da formatação é verificado se há o "-" no cep digitado para que caso não haja seja "printado" com e se tiver o hifen ele não seja duplicado.

    def validaCEP(self, cep):
        padraoValidador = re.compile("[0-9]{5}[-]{0,1}[0-9]{3}")
        return (re.match(padraoValidador, cep))

    def formataCEP(self):
        if (self.cep.find("-") == -1):
            return "{}-{}".format(self.cep[:5],self.cep[5:])
        else:
            return "{}-{}".format(self.cep[:5],self.cep[6:])
1 resposta

Olá Gabriel, tudo bem com você?

Muito bem pensada sua solução utilizando regex para validar o CEP e verificar se há ou não o hífen na hora da formatação. Isso pode ajudar a evitar erros de digitação e tornar a experiência do usuário mais agradável.

Uma sugestão que posso dar é utilizar a função replace() para remover o hífen caso ele tenha sido digitado de forma incorreta. Por exemplo:

def formataCEP(self):
    if "-" in self.cep:
        self.cep = self.cep.replace("-", "")
    return "{}-{}".format(self.cep[:5], self.cep[5:])

Assim, caso o usuário digite o CEP com hífen, ele será removido antes da formatação.

Em caso de dúvidas estou à disposição.

Não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!