regex-espacios-y-saltos

Espacios y saltos de línea en Regex

Al trabajar con expresiones regulares nos encontraremos con espacios y saltos de línea ya que, normalmente, forman parte de casi cualquier texto.

Así que vamos a tener que aprender a gestionar y tratar con ellos 👇.

Espacios

Los espacios son caracteres en blanco que se utilizamos para separar palabras y otros elementos en el texto.

Existen varios tipos de espacios en un texto, como:

  • Espacio simple:
  • Tabulación: \t
  • Espacio de fin de línea: \r (retorno de carro) y \n (nueva línea)

Para coincidir con un espacio en blanco podemos usar el metacaracter \s, que incluye espacios, tabulaciones y saltos de línea.

Si queremos encontrar todas las ocurrencias de una palabra que esté precedida o seguida por uno o más espacios, podemos usar el siguiente patrón:

\spalabra\s

Este patrón coincidirá con cualquier aparición de la palabra "palabra" que esté rodeada de espacios.

palabra
aquí espacio palabra y más espacios
sin espacio delantepalabra y palabradetras

Otros símbolos relativos a espacios:

SímboloCoincide con
\sCualquier espacio en blanco (espacio, tab, salto de línea)
\SCualquier carácter que sea un espacio en blanco
\tUn carácter de tabulación (tab)

Saltos de línea

Los saltos de línea son caracteres que indican el final de una línea de texto. Dependiendo del sistema operativo, los saltos de línea pueden representarse de diferentes maneras:

  • Unix/Linux: \n
  • Windows: \r\n
  • Mac (antiguo): \r

Para coincidir con saltos de línea, utilizamos \n o \r\n, dependiendo del sistema operativo.

Si queremos coincidir con líneas que contengan una palabra específica, podemos usar un patrón como el siguiente:

palabra\n

Vamos a probarlo,

con salto linea palabra
otra palabra sin salto linea

Otros símbolos relativos a saltos:

SímboloCoincide con
\nUn salto de línea
\rUn retorno de carro
\vUn salto de línea vertical
\fUn salto de página

Combinando espacios y saltos de línea

Podemos combinar espacios y saltos de línea para crear patrones más complejos.

Por ejemplo, si queremos encontrar líneas que contengan una palabra específica, y que puedan estar rodeadas de espacios en blanco o saltos de línea, podemos utilizar:

\s*palabra\s*

Este patrón coincidirá con la palabra "palabra" incluso si hay espacios antes o después.