As PCREs não são literalmente perl; eles usam uma biblioteca C independente, libpcre. Às vezes, "estilo PCRE" também é usado para se referir, por exemplo, a outras linguagens que implementam regexps usando os mesmos padrões / semelhantes, mesmo que eles não dependam da libpcre (note grep
faz usar o real libpcre).
Estritamente falando, uma expressão regular realmente não inclui modificadores, 1 é apenas um padrão. Algumas interfaces de regexp (como as de perl) permitem o uso de modificadores junto com os padrões; grep
não.
Existem algumas diferenças em termos de semântica de padrões também. Novamente, lembre-se de que não é realmente perl, é algo baseado nele.
1. A menos que eles estejam realmente dentro do padrão , o que você pode fazer com grep
. Por exemplo. grep -P "(?i)foobar"
será uma correspondência insensível a maiúsculas e minúsculas.