std::basic_regex constants
Материал из cppreference.com
< cpp | regex | basic regex
![]() | Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
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)
[править] См. также
(C++11) | общие параметры, управляющие поведением регулярных выражений (определение типа) |