Spec-Zone.ru › C++

std::regex_constants::match_flag_type

Определено в заголовке <regex>
using match_flag_type = /* implementation-defined */;
(1) (с C++11)
(2)
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 */;
(с C++11)
(до C++17)
inline constexpr match_flag_type match_default =     {};
inline constexpr match_flag_type match_not_bol =     /* unspecified */;
inline constexpr match_flag_type match_not_eol =     /* unspecified */;
inline constexpr match_flag_type match_not_bow =     /* unspecified */;
inline constexpr match_flag_type match_not_eow =     /* unspecified */;
inline constexpr match_flag_type match_any =         /* unspecified */;
inline constexpr match_flag_type match_not_null =    /* unspecified */;
inline constexpr match_flag_type match_continuous =  /* unspecified */;
inline constexpr match_flag_type match_prev_avail =  /* unspecified */;
inline constexpr match_flag_type format_default =    {};
inline constexpr match_flag_type format_sed =        /* unspecified */;
inline constexpr match_flag_type format_no_copy =    /* unspecified */;
inline constexpr match_flag_type format_first_only = /* unspecified */;
(с 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++.

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

См. также

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

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

Spec-Zone.ru

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