Encuentra espacios en blanco con Regex en JavaScript

Kervin VasquezKervin Vasquez
2 min read

En JavaScript, las expresiones regulares (regex) son una herramienta poderosa para encontrar y manipular texto. Uno de los usos más comunes es identificar espacios en blanco en cadenas de texto, ¡porque a veces esos espacios están donde menos te lo esperas! Vamos a ver cómo puedes usarlas para encontrar esos traicioneros espacios en blanco en cualquier lugar que se escondan.

¿Qué es un espacio en blanco?

Primero lo primero, ¿qué cuenta como espacio en blanco? En JavaScript, los espacios en blanco no son solo los espacios normales, sino también:

  • Saltos de línea (\n)

  • Tabulaciones (\t)

  • Retornos de carro (\r)

  • Espacios de diferentes tipos, como los que aparecen por un maldito "copiar y pegar" que nos vuelve locos.

Sintaxis básica para encontrar espacios en blanco

En regex, el patrón \s se utiliza para encontrar cualquier carácter de espacio en blanco. Es como el "detective" de los espacios en tu texto. Mira este ejemplo básico:

javascriptCopy codeconst texto = "Hola    Mundo!";
const regex = /\s/g;
const espacios = texto.match(regex);

console.log(espacios); // Output: [" ", " ", " ", " "]

En este caso, \s busca cualquier espacio en blanco, y la bandera g asegura que busca en toda la cadena, no solo en el primer lugar donde aparece. En el ejemplo, encuentra cuatro espacios entre "Hola" y "Mundo".

¿Cómo reemplazar o eliminar espacios en blanco?

Si lo que quieres es deshacerte de esos molestos espacios o reemplazarlos, también es muy fácil con regex. Por ejemplo, podemos usar el método replace de JavaScript para quitar todos los espacios en blanco:

javascriptCopy codeconst sinEspacios = texto.replace(/\s/g, "");
console.log(sinEspacios); // Output: "HolaMundo!"

¡Adiós espacios! Ahora el texto está completamente "pegado".

¿Y si solo quiero los espacios al principio o al final?

Para esos casos donde los espacios se acumulan al principio o al final (como después de un "copiar y pegar"), puedes usar los siguientes patrones:

  • ^\s+ para encontrar los espacios al inicio de la cadena.

  • \s+$ para encontrar los espacios al final.

javascriptCopy codeconst textoConEspacios = "   Hola Mundo!   ";
const sinEspaciosInicio = textoConEspacios.replace(/^\s+/, "");
const sinEspaciosFinal = sinEspaciosInicio.replace(/\s+$/, "");

console.log(sinEspaciosFinal); // Output: "Hola Mundo!"

Conclusión

Usar regex en JavaScript para encontrar espacios en blanco es súper fácil y útil. Con el patrón \s, puedes identificar y manipular cualquier tipo de espacio, desde el más obvio hasta el que te deja rascándote la cabeza. Ya sea que quieras eliminar espacios al principio, al final o en cualquier parte, ¡regex te tiene cubierto!

0
Subscribe to my newsletter

Read articles from Kervin Vasquez directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Kervin Vasquez
Kervin Vasquez