Estações de trabalho on-line OnWorks Linux e Windows

Logotipo

Hospedagem online grátis para estações de trabalho

<Anterior | Conteúdo | Próxima>

âncoras

O acento circunflexo (^) e cifrão ($) caracteres são tratados como âncoras em expressões regulares. Isso significa que eles fazem com que a correspondência ocorra apenas se a expressão regular for encontrada no início da linha (^) ou no final da linha ($):


[me @ linuxbox ~] $ grep -h '^ zip' dirlist * .txt

zip zipcloak zipgrep zipinfo zipnote zipsplit

[me @ linuxbox ~] $ grep -h 'zip $' dirlist * .txt

gunzip gzip funzip gpg-zip preunzip prezip descompactar zip

[me @ linuxbox ~] $ grep -h '^ zip $' dirlist * .txt

zip

[me @ linuxbox ~] $ grep -h '^ zip' dirlist * .txt

zip zipcloak zipgrep zipinfo zipnote zipsplit

[me @ linuxbox ~] $ grep -h 'zip $' dirlist * .txt

gunzip gzip funzip gpg-zip preunzip prezip descompactar zip

[me @ linuxbox ~] $ grep -h '^ zip $' dirlist * .txt

zip


imagem

Aqui, procuramos na lista de arquivos a string “zip” localizada no início da linha, no final da linha e em uma linha onde ela está tanto no início quanto no final da linha (ou seja, por si mesma em a linha). Observe que a expressão regular '^ $' (um início e um fim sem nada no meio) corresponderá a linhas em branco.


Um ajudante de palavras cruzadas

Mesmo com nosso conhecimento limitado de expressões regulares neste ponto, podemos fazer algo útil.

Minha esposa adora palavras cruzadas e às vezes ela me pede ajuda com uma pergunta específica. Algo como "O que é uma palavra de cinco letras cuja terceira letra é 'j' e a última letra é 'r' que significa ...?" Esse tipo de pergunta me fez pensar.

Você sabia que seu sistema Linux contém um dicionário? É verdade. Dê uma olhada no / usr / share / dict diretório e você pode encontrar um ou vários. Os arquivos de dicionário localizados lá são apenas longas listas de palavras, uma por linha, organizadas em ordem alfabética. No meu sistema, o palavras arquivo contém pouco mais de 98,500



imagem

palavras. Para encontrar respostas possíveis para a questão das palavras cruzadas acima, poderíamos fazer o seguinte:

[me @ linuxbox ~] $ grep -i '^ .. jr $' / usr / share / dict / words

principal principal

Usando essa expressão regular, podemos encontrar todas as palavras em nosso arquivo de dicionário que têm cinco letras e têm um “j” na terceira posição e um “r” na última posição.


Top OS Cloud Computing na OnWorks: