Para os modificadores imsxadlup
, você pode usar o (?X)
conforme descrito em Padrões estendidos :
$ echo FOO | grep -P '(?i)foo'
FOO
De acordo com grep --help
e man grep
, podemos usar a opção -P
para interpretar o padrão como uma expressão regular Perl (PCRE, para ser preciso), em vez do padrão expressões regulares básicas POSIX (BRE).
Na linguagem Perl, vários Modificadores podem ser adicionados à expressão, em para ajustar a interpretação do padrão (na sintaxe de /pattern/modifiers
).
Então, como alguém pode adicionar modificadores à expressão regular Perl do grep? Eu tentei algumas variações como grep -P "/^got.it$/ms" [FILE]
, mas os resultados da pesquisa estavam errados.
No entanto, sobre a interpretação PCRE, o manual aponta que:
Isto é altamente experimental e grep -P pode alertar sobre recursos não implementados.
É possível que a ferramenta grep não suporte modificadores ?
A propósito, notei que é possível realizar uma correspondência de padrões sem distinção entre maiúsculas e minúsculas usando a opção -i
, que é um exemplo de um modificador.
Para os modificadores imsxadlup
, você pode usar o (?X)
conforme descrito em Padrões estendidos :
$ echo FOO | grep -P '(?i)foo'
FOO