命名空间
变体
操作

std::regex_constants::match_flag_type

来自 cppreference.cn
< cpp‎ | regex
定义于头文件 <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 起)
(内联自 C++17 起)
1) match_flag_type 是一个 BitmaskType,用于指定额外的正则表达式匹配选项。

[编辑] 常量

注意:[firstlast) 指的是正在匹配的字符序列。

名称 解释
match_not_bol [firstlast) 中的第一个字符将被视为在一行的开头
(即 ^ 将不会匹配 [firstfirst))。
match_not_eol [firstlast) 中的最后一个字符将被视为在一行的结尾
(即 $ 将不会匹配 [lastlast))。
match_not_bow \b 将不会匹配 [firstfirst)
match_not_eow \b 将不会匹配 [lastlast)
match_any 如果存在多个可能的匹配,则任何匹配都是可接受的结果。
match_not_null 不匹配空序列。
match_continuous 仅匹配从 first 开始的子序列。
match_prev_avail --first 是一个有效的迭代器位置。
当设置时,会导致 match_not_bolmatch_not_bow 被忽略。
format_default std::regex_replace 中使用 ECMAScript 规则构造字符串(语法文档)。
format_sed std::regex_replace 中使用 POSIX sed 实用程序规则(语法文档)。
format_no_copy std::regex_replace 中,不将未匹配的字符串复制到输出。
format_first_only 仅替换 std::regex_replace 中的第一个匹配项。

所有常量,除了 match_defaultformat_default 之外,都是位掩码元素。match_defaultformat_default 常量是空位掩码。

[编辑] 缺陷报告

以下行为变更缺陷报告被追溯应用于之前发布的 C++ 标准。

DR 应用于 已发布的行为 正确的行为
LWG 2053 C++11 1. 这些常量被声明为 static
2. match_defaultformat_default0 初始化
1. 移除 static 说明符
2. 从 {} 初始化

[编辑] 参见

尝试将正则表达式匹配到整个字符序列
(函数模板) [编辑]
控制正则表达式行为的通用选项
(类型别名) [编辑]
描述不同类型的匹配错误
(类型别名) [编辑]