Fugir do regex de validação

Fugir do regex de validação

Oi pessoal!


Em alguns casos vejo que as pessaos ficam presas em determinado fluxo, pois há algum tipo de validação do input do usuário, exemplo abaixo:



Tem como fugir disso? Tentei colocar como primeiro a condição “Voltar”, porém sem sucesso.


@GabrielPetrone, help me.


10 comentários

Reputação 7

@Bruno_Gabriel boa pergunta, também estou passando por isso.


Varinha de condão, dente de leão, oremos para que o @GabrielPetrone tenha uma solução. 🔮 🧙‍♂

Reputação 7
Crachá +1

Fala pessoal, de fato eu precisei fazer algo pra resolver isso recentemente.


O Regex na Validação de resposta nos deixa muito limitados mesmo, por isso eu recomendo que na maioria das vezes, faça a validação através de um script. Então pra este caso, o que eu faria:


1 - Através de um script nas Ações de Saída do bloco, eu iria validar o input.content do cliente pra ver se ele digitou um CPF válido, retornando uma varíavel com a resposta true ou false (segue uma referência → Identificar CPF ou CNPJ - #3 por Adriano_tsi)

2 - Nas Condições de Saída eu iria colocar 3 validações:

2.1 - Se resposta do usuário for igual à voltardirecionar para o bloco menu

2.2 - Se variável validaCPF for igual à truedirecionar para o bloco próximoBloco

2.3 - Se variável validaCPF for igual à falsedirecionar para o bloco solicitarCPF


Algo mais ou menos assim, sabem?


Certamente podem surgir muitas soluções para isso, e também quero ouví-las, por isso to marcando a @fadoaglauss aqui.

Quando existe essa opção de bloquear a saída do usuário via regra, geralmente, incluo um contador de erros e se chegar na quantidade X, direciono ele para um outro menu informando que não está sendo possível validar o CPF ou algo do genero.

Reputação 7
Crachá +1

É uma boa né @Rodrigo_Valentim , eu faço isso as vezes. Eu faço 2 verificações, na terceira eu deixo o cliente passar, haha… e você?

Isso aí ! volto ele pro menu principal já que não sabe digitar um CPF válido

Pessoal,


Como vocês fazem essa contagem de erros para direcionar para outro bloco?

Reputação 5
Crachá +1

Opa, tudo bom pessoal?! Vou tentar contribuir aqui também :partyparrot:


@Bruno_Gabriel para contagem de erros você pode adicionar algum script simples pra somar +1 sempre que o script de validação do CPF/CNPJ retornar false, por exemplo:


function run(validCpfCnpj, errorCount) {
//Inicia contador se não existir
if(errorCount == null){
errorCount = 0
}
//Add + 1
if(validCpfCnpj != "true"){
parseInt(errorCount)
return ++errorCount
}

//Zera contador se input for válido
if(validCpfCnpj == "true"){
errorCount = 0
return errorCount
}

}

Fiz aqui e funcionou!


Useu o script que o @GabrielPetrone passou. Por acaso vocês tem um script de validação de e-mail?

Reputação 5
Crachá +1

@Bruno_Gabriel aqui está um exemplo de validação de e-mail:


function run(email) {
const regex = /((([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,})))/gm;
const validEmail = regex.test(email)
return validEmail;
}

Olá, @Adriano_tsi tudo bem? Você teria um script de validação para mídia? (ex: imagem, pdf).

Comente