regex e grep: correspondem a todas as letras de uma lista

0

Estou tentando encontrar a frase "Idéia de Capital", diferenciando maiúsculas de minúsculas, em um arquivo. A frase pode estar em uma linha, em várias linhas e ter letras entre elas. Por exemplo,

Correspondência:
Capital Idea

Capital
Idéia

Cx
axpitxxal xIdxea

Cx
axpitxxal xIdxea

Não combina:
ideia de capital

CapitalIdea

O mais perto que cheguei foi com:

CI='tr -d '\n' < $FILENAME | grep '.*C.*a.*p.*i.*t.*a.*l.*\s.*I.*d.*e.*a.*'

Eu queria encurtar isso para algo como

CI='tr -d '\n' < $FILENAME | grep '[Capital\sIdea]''

, mas os colchetes correspondem a todos os caracteres. Existe um padrão que corresponde apenas às linhas que têm todos os caracteres entre parênteses?

TLDR:
Em vez de corresponder a qualquer caracteres entre parênteses, existe sintaxe para corresponder a todos deles?

    
por Personius 22.04.2018 / 21:05

0 respostas