Пространства имён
Варианты
Действия

std::basic_regex constants

Материал из cppreference.com
< cpp‎ | regex‎ | basic regex

 
 
Библиотека регулярных выражений
Классы
(C++11)
Алгоритмы
Итераторы
Исключения
Типы
Константы
(C++11)
Грамматика регулярных выражений
 
std::basic_regex
Функции-элементы
Наблюдатели
Локаль
Модификаторы
Константы
Функции, не являющиеся элементами
Принципы вывода (C++17)
 
Определено в заголовочном файле <regex>
static constexpr std::regex_constants::syntax_option_type icase =

    std::regex_constants::icase;
static constexpr std::regex_constants::syntax_option_type nosubs =
    std::regex_constants::nosubs;
static constexpr std::regex_constants::syntax_option_type optimize =
    std::regex_constants::optimize;
static constexpr std::regex_constants::syntax_option_type collate =
    std::regex_constants::collate;
static constexpr std::regex_constants::syntax_option_type ECMAScript =
    std::regex_constants::ECMAScript;
static constexpr std::regex_constants::syntax_option_type basic =
    std::regex_constants::basic;
static constexpr std::regex_constants::syntax_option_type extended =
    std::regex_constants::extended;
static constexpr std::regex_constants::syntax_option_type awk =
    std::regex_constants::awk;
static constexpr std::regex_constants::syntax_option_type grep =
    std::regex_constants::grep;
static constexpr std::regex_constants::syntax_option_type egrep =

    std::regex_constants::egrep;
std::basic_regex определяет несколько констант, которые регулируют общее соответствие синтаксиса регулярных выражений.
Оригинал:
std::basic_regex defines several constants that govern general regex matching syntax.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Эти константы дублируются из std::regex_constants
Оригинал:
These constants are duplicated from std::regex_constants:
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Значение Эффект(ы)
icase Сопоставление символов должно выполняться без учёта регистра.
nosubs При выполнении сопоставлений все отмеченные подвыражения (expr) обрабатываются как немаркирующие подвыражения (?:expr). В предоставленной структуре std::regex_match нет совпадений, а mark_count() равно нулю.
optimize Даёт указание обработчику регулярных выражений ускорить сопоставление с потенциальными затратами на замедление построения. Например, это может означать преобразование недетерминированного FSA в детерминированное FSA.
collate Диапазоны символов в форме "[a-b]" будут чувствительны к локали.
multiline (C++17) Указывает, что ^ должен соответствовать началу строки, а $ должен соответствовать концу строки, если выбран механизм ECMAScript.
ECMAScript Используется Модифицированная грамматика регулярных выражений ECMAScript
basic Используется базовая грамматика регулярных выражений POSIX (документация по грамматике).
extended Используется расширенная грамматика регулярных выражений POSIX (документация по грамматике).
awk Используется грамматика регулярных выражений, используемая утилитой awk в POSIX (документация по грамматике)
grep Используется грамматика регулярных выражений, используемая утилитой grep в POSIX. Фактически это то же самое, что и опция basic с добавлением новой строки '\n' в качестве разделителя чередования.
egrep Используется грамматика регулярных выражений, используемая утилитой grep в POSIX с параметром -E. Фактически это то же самое, что и опция extended с добавлением новой строки '\n' в качестве разделителя чередования в дополнение к '|'.

Необходимо выбрать не более одного варианта грамматики из ECMAScript, basic, extended, awk, grep, egrep. Если грамматика не выбрана, предполагается, что выбрана ECMAScript. Другие параметры служат модификаторами, например std::regex("meow", std::regex::icase) эквивалентно std::regex("meow", std::regex::ECMAScript|std::regex::icase)

[править] См. также

общие параметры, управляющие поведением регулярных выражений
(определение типа) [править]