игнорирование регистра в libpcre с помощью c

StackOverflow https://stackoverflow.com/questions/1632569

  •  06-07-2019
  •  | 
  •  

Вопрос

Как игнорировать регистр при использовании pcre_compile и pcre_exec?

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

какой вариант мне использовать и где его указать?

Это было полезно?

Решение

Вам нужно передать PCRE_CASELESS во втором аргументе в pcre_compile , например так:

pcre_compile(pattern, PCRE_CASELESS, ...

(обратите внимание, что вы теряете память - вам нужно вызвать pcre_free для объекта, возвращенного pcre_compile .)

Другие советы

Вы можете использовать PCRE_CASELESS флаг в файле pcre_compile.

Пример:

  pcre_compile(
    pattern,              /* the pattern */
    PCRE_CASELESS|PCRE_MULTILINE,                    /* default options */
    &error,               /* for error message */
    &erroffset,           /* for error offset */
    NULL);                /* use default character tables */
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top