Spec-Zone.ru › C++

std::regex_constants::match_flag_type

Определён в заголовке <regex>
using match_flag_type = /* implementation-defined */;
(1) (начиная с C++11)
constexpr match_flag_type match_default =     {};
constexpr match_flag_type match_not_bol =     /* unspecified */;
constexpr match_flag_type match_not_eol =     /* unspecified */;
constexpr match_flag_type match_not_bow =     /* unspecified */;
constexpr match_flag_type match_not_eow =     /* unspecified */;
constexpr match_flag_type match_any =         /* unspecified */;
constexpr match_flag_type match_not_null =    /* unspecified */;
constexpr match_flag_type match_continuous =  /* unspecified */;
constexpr match_flag_type match_prev_avail =  /* unspecified */;
constexpr match_flag_type format_default =    {};
constexpr match_flag_type format_sed =        /* unspecified */;
constexpr match_flag_type format_no_copy =    /* unspecified */;
constexpr match_flag_type format_first_only = /* unspecified */;
(2) (начиная с C++11)
(inline начиная с C++17)
1) match_flag_type — это BitmaskType, задающий дополнительные параметры сопоставления регулярных выражений.

Константы

Примечание: [first, last) обозначает последовательность символов, с которой выполняется сопоставление.

Имя Пояснение
match_not_bol Первый символ в [first, last) будет считаться находящимся не в начале строки
(то есть ^ не будет соответствовать [first, first)).
match_not_eol Последний символ в [first, last) будет считаться находящимся не в конце строки
(то есть $ не будет соответствовать [last, last)).
match_not_bow \b не будет соответствовать [first, first).
match_not_eow \b не будет соответствовать [last, last).
match_any Если возможно несколько совпадений, результатом может быть любое из них.
match_not_null Не сопоставлять пустые последовательности.
match_continuous Сопоставлять только подпоследовательность, начинающуюся с first.
match_prev_avail --first является допустимой позицией итератора.
Если установлен, параметры match_not_bol и match_not_bow игнорируются.
format_default Использовать правила ECMAScript для формирования строк в std::regex_replace (документация по синтаксису).
format_sed Использовать правила утилиты POSIX sed в std::regex_replace (документация по синтаксису).
format_no_copy Не копировать несопоставленные строки в выходные данные в std::regex_replace.
format_first_only Заменять только первое совпадение в std::regex_replace.

Все константы, кроме match_default и format_default, являются элементами битовой маски. Константы match_default и format_default представляют собой пустые битовые маски.

Отчёты об ошибках

Следующие отчёты об ошибках, изменяющие поведение, были применены задним числом к ранее опубликованным стандартам C++.

Отчёт об ошибке Применён к Опубликованное поведение Корректное поведение
LWG 2053 C++11 1. константы были объявлены как static
2. match_default и format_default инициализировались значением 0
1. спецификатор static удалён
2. инициализация значением {}

См. также

regex_match
(C++11)
пытается сопоставить регулярное выражение со всей последовательностью символов
(шаблон функции)
syntax_option_type
(C++11)
общие параметры, управляющие поведением регулярных выражений
(определение типа)
error_type
(C++11)
описывает различные типы ошибок сопоставления
(определение типа)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/regex/match_flag_type

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API