Os manuais do GNU grep e GNU sed mencionam -E
como a opção para usar expressões regulares estendidas:
grep :
-E
--extended-regexp
Interpret the pattern as an extended regular expression (ERE). (-E is specified by POSIX.)
sed :
-E
-r
--regexp-extended
Use extended regular expressions rather than basic regular expressions.
(Há também uma menção de -E
sendo suportado, mas não documentado anteriormente.)
Você pode verificar as definições exatas dos regexes suportados por ambos, mas sua regex parece padrão o suficiente. Na verdade, ele parece equivalente à regex básica\$text *( *[^)] *)
(a menos que sua substituição sed
use o grupo de captura).
No entanto, observe que, conforme escrito (entre aspas duplas), não corresponderá a nada. A barra invertida irá escapar do sinal de dólar para o shell, impedindo que ele seja tratado como expansão de parâmetro. Mas grep
ou sed
verá uma regex começando com $
para o final da linha. Não pode haver nada após o final da linha, portanto, o padrão não pode corresponder. Você precisa adicionar mais duas barras invertidas ou usar aspas simples em vez de aspas duplas.