Pergunta
Como posso ignorar caso quando se usa pcre_compile e pcre_exec?
pcre_exec(
pcre_compile(pattern,0,&error,&erroroffset,0),
0, string, strlen(string), 0, 0, ovector, sizeof(ovector));
qual opção que eu uso e onde posso especificá-lo?
Solução
Você precisa passar PCRE_CASELESS
no segundo argumento para pcre_compile
, como este:
pcre_compile(pattern, PCRE_CASELESS, ...
(Note que você está com vazamento de memória lá -. Você precisa pcre_free
chamada no objeto retornado por pcre_compile
)
Outras dicas
Você pode usar o sinalizador PCRE_CASELESS
na pcre_compile.
Exemplo:
pcre_compile(
pattern, /* the pattern */
PCRE_CASELESS|PCRE_MULTILINE, /* default options */
&error, /* for error message */
&erroffset, /* for error offset */
NULL); /* use default character tables */
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow