Не могу установить библиотеку PCRE - C (СИ)
Формулировка задачи:
На скринах установленные библиотеки и ошибка. Компилю код из вики https://ru.wikipedia.org/wiki/PCRE
На скринах установленные библиотеки и ошибка. Компилю код из вики https://ru.wikipedia.org/wiki/PCRE
Может есть какиие нибудь альтернативные варианты использования регулярных выражений в си?
Решение задачи: «Не могу установить библиотеку PCRE»
textual
Листинг программы
# include <iostream>
# include <pcre.h>
using namespace std;
int main(){
char pattern[] = "[es]"; // шаблон (регулярное выражение)
char str[] = "test"; // разбираемая строка
// создание таблицы перекодировки для локали ru
const unsigned char *tables = NULL;
setlocale (LC_CTYPE, (const char *) "ru.");
tables = pcre_maketables();
// компилирование регулярного выражения во внутреннее представление
pcre *re;
int options = 0;
const char *error;
int erroffset;
re = pcre_compile ((char *) pattern, options, &error, &erroffset, NULL);
}
Объяснение кода листинга программы
- Подключение необходимых библиотек
iostream- для ввода/вывода данныхpcre.h- для работы с регулярными выражениями
- Объявление переменной
main, которая будет содержать код возврата программы - Объявление массивов
patternиstr, которые будут использоваться для работы с регулярными выражениями и строкой соответственно - Создание таблицы перекодировки для локали
ru- Вызов функции
setlocaleс аргументомLC_CTYPEи строкойru., которая задает локаль - Вызов функции
pcre_maketables, которая создает таблицу перекодировки для указанной локали
- Вызов функции
- Компиляция регулярного выражения во внутреннее представление
- Объявление переменной
re, которая будет содержать скомпилированное регулярное выражение - Установка значения переменной
optionsравным 0 - Вызов функции
pcre_compile, которая компилирует регулярное выражение в внутреннее представление - Передача в функцию
pcre_compileуказатель на массивpattern, значение переменнойoptions, указатель на переменнуюerror, которая будет содержать сообщение об ошибке, и указатель на переменнуюerroffset, которая будет содержать смещение ошибки в регулярном выражении
- Объявление переменной
- Завершение работы программы
- Поскольку в данном коде не указаны действия после вызова функции
pcre_compile, предполагается, что программа завершается после этого вызова
- Поскольку в данном коде не указаны действия после вызова функции