命名空间
变体
操作

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 起为 inline)
1) match_flag_type 是一种 BitmaskType,它指定了额外的正则表达式匹配选项。

[edit] 常量

注意:[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 常量是空位掩码。

[edit] 缺陷报告

下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。

缺陷报告 应用于 发布时的行为 正确的行为
LWG 2053 C++11 1. 常量被声明为 static
2. match_defaultformat_default0 初始化
1. 移除了 static 指定符
2. 从 {} 初始化

[edit] 参阅

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