Buscar en una cadena es una tarea común en la programación, especialmente cuando se trabaja con textos. JavaScript ofrece varios métodos para buscar y encontrar subcadenas dentro de una cadena. En este artículo, aprenderás a utilizar estos métodos de manera sencilla.
1. Usando el método indexOf()
El método indexOf()
es uno de los más comunes para buscar una subcadena dentro de otra cadena. Este método devuelve el índice de la primera aparición de la subcadena buscada. Si no encuentra la subcadena, devuelve -1
.
const texto = "JavaScript es genial";
const indice = texto.indexOf("genial");
console.log(indice); // Output: 15
En este ejemplo, indexOf()
busca la palabra «genial» en la cadena y devuelve la posición en la que comienza. Si la palabra no estuviera en la cadena, devolvería -1
.
2. Usando el método includes()
El método includes()
es una forma más simple de verificar si una subcadena existe dentro de otra cadena. Devuelve true
si encuentra la subcadena, o false
si no la encuentra.
const texto = "JavaScript es genial";
const existe = texto.includes("genial");
console.log(existe); // Output: true
Aquí, includes()
se usa para verificar si la palabra «genial» está en la cadena texto
. Este método es ideal cuando solo necesitas saber si una subcadena está presente.
3. Usando el método search()
El método search()
funciona de manera similar a indexOf()
, pero acepta una expresión regular como argumento. Devuelve el índice de la primera coincidencia o -1
si no encuentra ninguna coincidencia.
const texto = "JavaScript es genial";
const indice = texto.search("es");
console.log(indice); // Output: 11
En este ejemplo, search()
encuentra la palabra «es» en la cadena texto
y devuelve su índice. Este método es especialmente útil cuando se utilizan expresiones regulares para buscar patrones más complejos.
4. Usando el método match()
El método match()
se utiliza para buscar coincidencias dentro de una cadena utilizando expresiones regulares. Devuelve un array con todas las coincidencias encontradas, o null
si no encuentra ninguna.
const texto = "JavaScript es genial y aprender JavaScript es divertido";
const coincidencias = texto.match(/JavaScript/g);
console.log(coincidencias); // Output: ["JavaScript", "JavaScript"]
En este ejemplo, match()
busca todas las ocurrencias de la palabra «JavaScript» en la cadena y las devuelve en un array. La bandera g
en la expresión regular indica que debe buscar globalmente en toda la cadena.
5. Usando el método startsWith() y endsWith()
Estos métodos te permiten verificar si una cadena comienza o termina con una subcadena específica.
const texto = "JavaScript es genial";
const empiezaCon = texto.startsWith("JavaScript");
console.log(empiezaCon); // Output: true
const terminaCon = texto.endsWith("genial");
console.log(terminaCon); // Output: true
En este ejemplo, startsWith()
verifica si la cadena comienza con «JavaScript», y endsWith()
verifica si termina con «genial». Ambos métodos devuelven un valor booleano.
Conclusión
JavaScript ofrece diversas formas de buscar y encontrar subcadenas dentro de una cadena. Dependiendo de tus necesidades, puedes utilizar indexOf()
para obtener la posición de una subcadena, includes()
para verificar su existencia, search()
y match()
para búsquedas más avanzadas con expresiones regulares, y startsWith()
y endsWith()
para comprobar cómo comienza o termina una cadena. Con estas herramientas, podrás manejar la búsqueda en cadenas de manera efectiva en tus proyectos.