std::regex_constants::match_flag_type - cppreference.com
From cppreference.com
| Defined in header |
||
|
|
(1) | (since C++11) |
|
|
(2) | (since C++11) (inline since C++17) |
1) match_flag_type is a BitmaskType that specifies additional regular expression matching options.
Constants
Note: [first, last) refers to the character sequence being matched.
| Name | Explanation |
match_not_bol
|
The first character in [first, last) will be treated as if it is not at the beginning of a line(i.e. ^ will not match [first, first)).
|
match_not_eol
|
The last character in [first, last) will be treated as if it is not at the end of a line(i.e. $ will not match [last, last)).
|
match_not_bow
|
\b will not match [first, first).
|
match_not_eow
|
\b will not match [last, last).
|
match_any
|
If more than one match is possible, then any match is an acceptable result. |
match_not_null
|
Do not match empty sequences. |
match_continuous
|
Only match a sub-sequence that begins at first.
|
match_prev_avail
|
--first is a valid iterator position.When set, causes match_not_bol and match_not_bow to be ignored.
|
format_default
|
Use ECMAScript rules to construct strings in std::regex_replace (syntax documentation). |
format_sed
|
Use POSIX sed utility rules in std::regex_replace (syntax documentation). |
format_no_copy
|
Do not copy un-matched strings to the output in std::regex_replace. |
format_first_only
|
Only replace the first match in std::regex_replace. |
All constants, except for match_default and format_default, are bitmask elements. The match_default and format_default constants are empty bitmasks.
Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
| DR | Applied to | Behavior as published | Correct behavior |
|---|---|---|---|
| LWG 2053 | C++11 | 1. the constants were declared static2. match_default and format_default were initialized from 0
|
1. removed the static specifier2. initialized from {}
|