Las expresiones regulares, a menudo abreviadas como regex, son una herramienta poderosa para la selección de texto basada en patrones. Comprenderlas es fundamental para dominar la manipulación de texto en Linux. Si bien hay muchas aplicaciones para aprender Linux, profundizar en conceptos centrales como regular expression linux es la forma más rápida de alcanzar un dominio avanzado en Linux. Utilizan notaciones especiales, algunas de las cuales son similares a los comodines como *.
Exploremos algunos de los operadores de regex más comunes, que son casi universales en todos los lenguajes de programación. Usaremos el siguiente texto como nuestro ejemplo:
sally sells seashells
by the seashore
Anclaje al Inicio de una Línea
El símbolo de circunflejo ^ coincide con el comienzo de una línea. Asegura que tu patrón aparezca solo al principio.
^by
Este patrón coincidiría con la línea "by the seashore" pero no con "sally sells seashells".
Anclaje al Final de una Línea
El símbolo de dólar $ coincide con el final de una línea. Es el homólogo del ancla ^.
seashore$
Este patrón coincidiría con la línea "by the seashore" porque termina con "seashore".
Coincidencia de Cualquier Carácter Único
El punto . es un comodín que coincide con cualquier carácter único.
b.
En nuestro ejemplo, esto coincidiría con "by".
Uso de Corchetes para Conjuntos de Caracteres
Los corchetes [] le permiten especificar un conjunto de caracteres para hacer coincidir. Esto proporciona más control que el comodín ..
s[ae]lls
Esto coincidiría con "sells" y también coincidiría con "salls".
También puede usar corchetes para especificar lo que no debe coincidir. Cuando el circunflejo ^ es el primer carácter dentro de los corchetes, niega el conjunto, haciendo coincidir cualquier carácter excepto los enumerados.
s[^e]lls
Esto coincidiría con "salls" pero no con "sells".
Finalmente, los corchetes admiten rangos para definir eficientemente un gran conjunto de caracteres.
d[a-c]g
Este patrón coincidirá con "dag", "dbg" y "dcg". Tenga en cuenta que los rangos distinguen entre mayúsculas y minúsculas. Por ejemplo, [a-c] no coincidirá con A, B o C.
Aprender estos operadores es una de las mejores maneras de aprender la eficiencia de la línea de comandos de Linux.