Pregunta

¿Cómo ignoro el caso cuando uso pcre_compile y pcre_exec?

pcre_exec(
    pcre_compile(pattern,0,&error,&erroroffset,0),
    0, string, strlen(string), 0, 0, ovector, sizeof(ovector));

¿Qué opción uso y dónde lo especifico?

¿Fue útil?

Solución

Debe pasar PCRE_CASELESS en el segundo argumento a pcre_compile , así:

pcre_compile(pattern, PCRE_CASELESS, ...

(Tenga en cuenta que está perdiendo memoria allí; debe llamar a pcre_free en el objeto devuelto por pcre_compile ).

Otros consejos

Puede usar el indicador PCRE_CASELESS en pcre_compile.

Ejemplo:

  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 bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top