Ir para conteúdo

POWERED BY:

Arquivado

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

Bart

Quantos 'A's eu tenho na minha string?

Recommended Posts

Como eu faço pra contar o número de ocorrências de um caracater específico na minha string?Por exemplo: Quantos "A"s existem em BANANA?Resposta: 3Que função javascript que conta o número dessas ocorrências?Será que alguém tem idéia de como fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha cara, se tem um método já definido pra isso. Mas eu criei uma função agora ó:

 

 

<html><head><script language="JScript"><!--/*início da função básica */function stroc(campo,letra){var ocorrencia = 0;campo = campo.value.split("");for(var i=0;i<campo.length;i++){if(campo[i]==letra.value){ocorrencia++;}}return ocorrencia;}function ocorrencias(){alert("A string \""+document.all['t2'].value+"\"  foi encontrada "+stroc(document.all['t1'], document.all['t2'])+" vezes dentro de"+document.all['t1'].value)}--></script></head><body onunload="fecha()">Digite aqui uma palavra: <input type="text" name="t1"><br />Digite aqui um caractere: <input type="text" name="t2" maxlength="1"><input type="button" onclick="ocorrencias()"></body></html>

 

Abraços

 

*******EDITADO**********

 

Esqueci de explicar né ?

 

Seguinte : A função stroc() retorna o número de ocorrencia de uma string em outra...entendeu ? Ela tem dois parametros: campo e letra. Essa função vai retornar quantas vezes letra foi encontrada em campo ! Pra usá-la você pode colocá-la numa variável, tipo assim:

 

var nome_da_variavel = stroc("Minhastring","a");

 

E o valor de nome_da_variavel vai ser 1.

Se não houver nenhuma ocorrência vai ser zero ;)

 

************************

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na verdade John, eu não cheguei a usar sua solução, mas mesmo assim, VALEU!!

 

Segue minha solução.

Eu precisava validar a entrada de um endereço IP no meu campo, e precisava contar quantos "." o usuário tava digitando.

Eu podia definir uma máscara e fazer com que os pontos fosse inseridos automaticamente, mas aí se o cara digitasse um IP como esse: 10.0.0.1, ficaria assim: 010.000.000.001, e achei muito ruim (até pra ler). Sendo assim, bolei esse código..... Acho que valida em todos os casos.

 

//**********************************************************  //************  Validação de Endereço IP   *****************  var i, pontos, ult_char, seguido, ini, fim;  pontos = 0;  ult_char = "";  seguido = false;  for(i=0;i<Form.EndIP.value.length;i++){ 	 if(Form.EndIP.value.charAt(i) == ".")pontos++; 	 if (Form.EndIP.value.charAt(i) == "." && ult_char == "."){    seguido = true;	    break; 	 }else{    ult_char = Form.EndIP.value.charAt(i); 	 }  }  ini = Form.EndIP.value.charAt(0);  fim = Form.EndIP.value.charAt(Form.EndIP.value.length-1);    if((ini==".") || (fim==".") || (seguido) || (pontos != 3)){ 	 alert("IP Inválido!\nInforme o IP do computador."); 	 Form.EndIP.focus(); 	 return false;  }  //**********************************************************

Meu usuário final ainda não testou, pois ainda estou desenvolvendo o sistema, mas nos meus testes preliminares, correu tudo bem.....

Fica aí a dica pra quem vier a precisar.....

 

Falow......

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.