2009-10-27 5 views
1

Comment ignorer le cas lors de l'utilisation de pcre_compile et pcre_exec?ignorer la casse dans libpcre avec c

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

quelle option est-ce que j'utilise et où puis-je le spécifier?

Répondre

4

Vous devez passer PCRE_CASELESS dans le second argument pcre_compile, comme ceci:

pcre_compile(pattern, PCRE_CASELESS, ... 

(. Notez que vous fuite de mémoire là - vous avez besoin d'appeler pcre_free sur l'objet retourné par pcre_compile)

3

Vous pouvez utiliser l'indicateur PCRE_CASELESS dans le pcre_compile.

Exemple:

pcre_compile(
    pattern,    /* the pattern */ 
    PCRE_CASELESS|PCRE_MULTILINE,     /* default options */ 
    &error,    /* for error message */ 
    &erroffset,   /* for error offset */ 
    NULL);    /* use default character tables */ 
Questions connexes