Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

JGD

Validar sequencia em string

Recommended Posts

Olá Pessoal,

 

Em javascript:

 

Preciso evitar duplicidade de ocorrências de valores em uma string e não aceitar valor zerado antes de um valor maior que 0 zero.

 

Estou tentando assim mais na hora do miolo não consigo detectar a duplicidade... Quanto mais os valores zeros...

 

<script>
var Retorno = new Array
var Retorno2 = new Array

var string =1|1|3|4;
//regra 1:O valor 1não pode estar repedido.. Independente da posição
//Regra 2:Não posso ter nenhum valor 0 zero  antes de uma valor maior que zero...Independente da posição onde estiver um valor. 
var string =0|0|0|4; //errado
var string =4|0|0|0; //correto!

var corta = string.length - 1;
var sAvali = string.substr(0,corta); 
Retorno = string.split("|"); 
Retorno2 = string.split("|"); 

var nT = Retorno.length - 1;
var n = 0;
var xTem="N";
var x1Tem="";

       //-->
       while(n <=nT){

              if(Retorno[n]=="0" || Retorno[n]==""){

               }else{
               alert(n +"|"+ Retorno[n])
               var x1Tem = Retorno[n]

                   for(i=0;i < Retorno2.length;i++){
                   if(Retorno2 == x1Tem){

                   }else{
                       if(Retorno[n]==Retorno2[i]){
                        xTem="S"; 
                        }else{
                        xTem="N";
                        }

                     }   
                   } 

              }
        n++;
       }
       //-->

</script> 

 

Agradeço qualquer ajuda ou dica.

Compartilhar este post


Link para o post
Compartilhar em outros sites

não pode ter números 0 a esquerda certo?

 

/**
* 04 false
* 004 false
* 0004 false
* 0004 false
* 40 true
* 400 true
* 4000 true
*/
str = '0004';
if(str.charAt(0) == 0) return false;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu Vadio,

 

Pelo menos já é meio caminho para um dois problemas.

Vou tentar ajustar também para: 0401

com a sua dica.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.