Guía básica de expresiones regulares en Linux: qué son y cómo usarlas

Como usuario o administrador de Linux, el tema de las expresiones regulares probablemente surge con bastante frecuencia, y si no es así, te estás perdiendo algo. Muchos programas de línea de comandos como grep o scripts en perl, python o PHP, hacen uso o pueden hacer uso de expresiones regulares.

¿Qué es una expresión regular?

Una expresión regular (también conocida como regex o regexp) es una forma de hacer coincidir cadenas de texto, por caracteres, palabras o patrones de caracteres. Existen tres tipos principales de expresiones regulares: las regex POSIX, las regex basadas en perl y las regex simples. Sin embargo, los conceptos básicos de todas ellas son en su mayoría los mismos; además, las regex basadas en perl se utilizan en varios lenguajes de programación además de perl: también se utilizan en Python, Ruby, Java, JavaScript y PCRE, entre otros.

A continuación, se muestra una lista de expresiones regulares básicas basadas en perl y lo que hacen:

  • . Coincide con cualquier carácter.
  • * Coincide con 0 o más repeticiones del carácter anterior.
  • + Coincide con 1 o más repeticiones del carácter anterior.
  • ? Coincide con 0 o 1 repetición del carácter anterior (el carácter anterior es opcional).
  • \d Coincide con un solo dígito (‘[:digit:]’ en POSIX).
  • \w Coincide con cualquier carácter alfanumérico (incluyendo alfanuméricos y guiones bajos; ‘[:word:]’ en POSIX).
  • [ABC] Coincide con cualquier carácter individual de la clase (es decir, ‘A’ o ‘B’ o ‘C’).
  • [ABC]+ Coincide con 1 o más caracteres de la clase.
  • $ Coincide con el final de la cadena.
  • ^ Coincide con el principio de la cadena.
  • | Coincide con la expresión antes o después de ‘|’.

Las expresiones regulares pueden parecer confusas y difíciles de entender, pero son muy poderosas. Aquí tienes algunos ejemplos de expresiones regulares en acción:

foo|bar

La expresión anterior coincide con "foo" o "bar".

https?://(www.)?foo.com

La expresión anterior coincide con https://www.foo.com, https://foo.com, http://foo.com o http://www.foo.com.

Cómo utilizar Isearch para buscar archivos de texto en Linux
[fb]?oo

La expresión anterior coincide con "foo", "boo" o "oo".

[fb]+oo

La expresión anterior coincide con "foo", "boo", "fboo", "ffoo", etc., pero no coincide con "oo".

Saber utilizar expresiones regulares es especialmente útil en programación, pero también puede ser muy útil para herramientas de línea de comandos. El comando grep, cuando se llama como egrep, puede utilizar expresiones regulares POSIX, lo que eleva grep a un nivel de comodidad completamente nuevo. El comando find también admite el uso de expresiones regulares para encontrar archivos, y las herramientas awk y sed también admiten expresiones regulares.

Para los administradores de sistemas, muchos programas pueden utilizar expresiones regulares en archivos de configuración, como Apache. Las directivas "Match" en Apache (es decir, <DirectoryMatch> y <RedirectMatch>) admiten expresiones regulares, al igual que las reglas de reescritura.

Saber utilizar expresiones regulares no es solo para los "élite" o incluso solo para los administradores de sistemas; ¡incluso Google admite expresiones regulares en las consultas de búsqueda! No, son útiles para mucha gente, incluso si solo aprendes expresiones regulares básicas como las mencionadas anteriormente. Facilitan mucho la búsqueda de cosas y pueden reducir múltiples comandos o directivas a uno solo, lo que en última instancia puede mejorar la productividad.

Guía para entender y gestionar los permisos de archivos y directorios en Linux

En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Código abierto, allí encontraras muchos artículos similares a Guía básica de expresiones regulares en Linux: qué son y cómo usarlas , tenemos lo ultimo en tecnología 2023.

Artículos Relacionados

Subir

Utilizamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.