Expressões regulares, frequentemente abreviadas como regex, são uma ferramenta poderosa para seleção de texto baseada em padrões. Entendê-las é fundamental para dominar a manipulação de texto no Linux. Embora existam muitos aplicativos para aprender Linux, mergulhar em conceitos centrais como regular expression linux é o caminho mais rápido para a proficiência avançada em Linux. Elas usam notações especiais, algumas das quais são semelhantes a curingas como *.
Vamos explorar alguns dos operadores de regex mais comuns, que são quase universais em linguagens de programação. Usaremos o seguinte texto como nosso exemplo:
sally sells seashells
by the seashore
Ancoragem ao Início de uma Linha
O símbolo circunflexo ^ corresponde ao início de uma linha. Ele garante que seu padrão apareça apenas no começo.
^by
Este padrão corresponderia à linha "by the seashore", mas não a "sally sells seashells".
Ancoragem ao Fim de uma Linha
O símbolo cifrão $ corresponde ao fim de uma linha. É o equivalente à âncora ^.
seashore$
Este padrão corresponderia à linha "by the seashore", porque ela termina com "seashore".
Correspondência de Qualquer Caractere Único
O ponto . é um curinga que corresponde a qualquer caractere único.
b.
Em nosso exemplo, isso corresponderia a "by".
Usando Colchetes para Conjuntos de Caracteres
Colchetes [] permitem que você especifique um conjunto de caracteres a serem correspondidos. Isso oferece mais controle do que o curinga ..
s[ae]lls
Isso corresponderia a "sells" e também corresponderia a "salls".
You can also use brackets to specify what not to match. When the caret ^ is the first character inside brackets, it negates the set, matching any character except those listed.
s[^e]lls
Isso corresponderia a "salls", mas não a "sells".
Finalmente, os colchetes suportam intervalos para definir um grande conjunto de caracteres de forma eficiente.
d[a-c]g
Este padrão corresponderá a "dag", "dbg" e "dcg". Esteja ciente de que os intervalos diferenciam maiúsculas de minúsculas. Por exemplo, [a-c] não corresponderá a A, B ou C.
Aprender esses operadores é uma das melhores maneiras de aprender a eficiência da linha de comando do Linux.