En este post te mostraré a obtener un fragmento de una cadena en JavaScript, es decir, cortar o extraer parte de una cadena de otra usando JS.
Este ejercicio sirve para extraer parte de una cadena en el navegador y en Node.js
Nota: recuerda que esto ya lo hicimos con PHP.
La función substring permite extraer parte de una cadena. Este método lo tienen todos los strings de JavaScript. La sintaxis es:
let cadenaExtraida = cadena.substring(inicio, fin);
En donde:
cadena
– Es la cadena de la que vamos a extraer o cortar otra cadenainicio
– El índice desde dónde comenzar a extraer la cadenafin
– El índice hasta donde se extrae la cadenaVeremos un ejemplo a continuación.
/**
* Extraer parte de una cadena con JavaScript
*
* @author parzibyte
*
* https://parzibyte.me/blog
*/let cadena = "parzibyte.me";
let extraida = cadena.substring(0, 9);
console.log("Extraída: ", extraida);
/*
Salida:
Extraída: parzibyte
*/
En este caso extraemos desde el 0 hasta el 9, cortando la cadena y obteniendo simplemente “parzibyte”
Como se puede observar, se coloca el inicio y fin, no la cantidad de caracteres que se desea extraer.
Ahora veamos otro enfoque en donde cortamos la cadena tomando la posición de un carácter. Por ejemplo, extraer lo que hay antes del primer espacio en blanco.
/**
* Extraer parte de una cadena con JavaScript
*
* @author parzibyte
*
* https://parzibyte.me/blog
*/let cadena = "JavaScript es un lenguaje muy bueno";
// Buscamos el índice del espacio
// https://parzibyte.me/blog/2018/12/04/buscar-indice-posicion-elemento-arreglo-javascript/
let indice = cadena.indexOf(" ");
// Cortar desde 0 hasta la aparición del primer espacio
let extraida = cadena.substring(0, indice);
console.log("Extraída: ", extraida);
/*
Salida:
Extraída: JavaScript
*/
En este caso tenemos la posición o índice de un carácter (el espacio en blanco) a través de indexOf
.
A partir del mismo extraemos parte de la cadena, desde 0 hasta el índice obtenido.
De esta manera podemos cortar cadenas en JavaScript basándonos en caracteres buscados usando indexOf.
Recuerda que igualmente puedes cambiar el índice de inicio, no siempre debe ser cero.
Además de substring
, en JavaScript existe la función substr
que toma el inicio desde dónde comenzar a cortar la cadena, y la cantidad de caracteres que se deben tomar.
Si te confundes, te recomiendo que uses substring
pues es lo más entendible y deseable. Pero para comprobar la diferencia, veamos el siguiente ejemplo:
/**
* Diferencia entre substr y substring en JavaScript
*
* @author parzibyte
*
* https://parzibyte.me/blog
*/let cadena = "JavaScript es un lenguaje muy bueno";
// Este extrae de inicio a fin:
let conSubstring = cadena.substring(17, 25);
console.log("Con substring: ", conSubstring);
// Este extrae N caracteres desde inicio
let conSubstr = cadena.substr(17, 25);
console.log("Con substr: ", conSubstr);
/*
Salida:
Con substring: lenguaje
Con substr: lenguaje muy bueno
*/
En la línea 10 estamos usando substring
, tomando lo que haya desde la posición 17 hasta la 25.
En cambio, en la línea 13 estamos usando substr
tomando 25 caracteres a partir de la posición 17.
Esa es la diferencia, que substring
corta desde inicio
hasta fin
, y substr
toma N caracteres a partir de inicio
.
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.