Contar las veces que aparece un carácter en un String de Javascript

Para saber las veces que aparece un carácter en un string de Javascript podemos hacerlo de la siguiente forma:

Esto nos devolverá «8«, que son las veces que aparece la «A» en toda la cadena.

Podemos verlo funcionando en:

 



 

O utilizar la siguiente función:

Donde le pasaríamos la cadena que queremos y el carácter a buscar…
Algo así por ejemplo:

Y esto nos devolvería: 8

Para trastear:


Tu opinión es importante para mi, ¿Te ha resultado útil este artículo?

4 Comments

claudia

Hola,
Estoy tratando de capturar la cantidad de cada caracteres ingresados en un texto, pero me muestra para las 3 letras de ejemplo la misma cantidad. Llevo 1 mes estudiando Javascript y no encuentro la solución. Porfa me ayudas!!!!!mil gracias….
Claudia.

var cadena = prompt(«Ingrese un texto»);

var indices = [];
for(var i = 0; i < cadena.length; i++) {
if (cadena[i].toLowerCase() === 'a') indices.push(i);
if (cadena[i].toLowerCase() === 'b') indices.push(i);
if (cadena[i].toLowerCase() === 'c') indices.push(i);
}//necesito ingresar todo el abecedario
console.log(indices.length + " : " + "a");
console.log(indices.length + " : " + "b");
console.log(indices.length + " : " + "c");

Reply
kike

¡¡Hola Claudia!!

Muchas gracias por escribir (:

Podrías hacerlo utilizando la siguiente función:

A raíz de tu consulta, he preparado un post explicando el proceso, puedes verlo en https://ekiketa.es/contar-las-letras-que-aparecen-en-un-string-con-javascript/.

¡Saludos!

Reply
tulsi

Hola! me gustaria poder buscar una palabra en vez de una letra, estoy tratando de buscar algunos anagramas dentro de una cadena de strings… Sabras que tipo de funcion tendría que emplear??, de antemano muchas gracias

Reply
kike

Hola Tulsi,

Gracias por escribir (:
Dedicaré un post a explicar un poco mejor cómo hacer esto pero de momento te lo cuento rápidamente.
Podemos utilizar una expresión regular y la función match de Javascript para ello.

Te pego el fiddle para que veas el ejemplo:

¡¡Saludos!!

Reply

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*