std::match_results
来自cppreference.com
该页由英文版wiki使用Google Translate机器翻译而来。
该翻译可能存在错误或用词不当。鼠标停留在文本上可以看到原版本。你可以帮助我们修正错误或改进翻译。参见说明请点击这里. |
在头文件 <regex> 中定义
|
||
template< class BidirIt, |
(C++11 起) | |
类模板std::match_results由一组字符序列,表示正则表达式匹配的结果.
原文:
The class template std::match_results holds a collection of character sequences that represent the result of a regular expression match.
这是一种专门分配器感知容器。它只能被默认创建或修改传递给std::regex_search()或std::regex_match()算法.
原文:
This is a specialized allocator-aware container. It can only be default created or modified by passing to the std::regex_search() or std::regex_match() algorithms.
的sub_match(索引0)在match_result始终代表完全匹配一个正则表达式内的靶序列,并随后的sub_matches代表子表达式匹配相应的序列左括号分隔的子表达式在正则表达式.
原文:
The first sub_match (index 0) contained in a match_result always represents the full match within a target sequence made by a regex, and subsequent sub_matches represent sub-expression matches corresponding in sequence to the left parenthesis delimiting the sub-expression in the regex.
[编辑] 类型要求
-BidirIt 必须满足 BidirectionalIterator 的要求。
| ||
-Alloc 必须满足 Allocator 的要求。
|
[编辑] 专业化
常见的字符序列类型的几个专业,分别为:
原文:
Several specializations for common character sequence types are provided:
在头文件
<regex> 中定义 | |
类型
|
Definition |
cmatch
|
match_results<const char*> |
wcmatch
|
match_results<const wchar_t*> |
smatch
|
match_results<std::string::const_iterator> |
wsmatch
|
match_results<std::wstring::const_iterator> |
[编辑] 会员类型
会员类型
|
Definition |
allocator_type
|
Allocator |
value_type
|
std::sub_match<BidirIt> |
const_reference
|
const value_type& |
reference
|
const_reference |
const_iterator
|
“实现定义的'(取决于基础容器)
原文: implementation defined (depends on the underlying container) |
iterator
|
const_iterator |
difference_type
|
std::iterator_traits<BidirIt>::difference_type |
size_type
|
std::allocator_traits<Alloc>::size_type |
char_type
|
std::iterator_traits<BidirIt>::value_type |
string_type
|
std::basic_string<char_type> |
[编辑] 成员函数
构造对象 (公共成员函数) | |
解构的对象 (公共成员函数) | |
分配的内容 (公共成员函数) | |
返回的关联分配器 (公共成员函数) | |
| |
(公共成员函数) | |
| |
检查是否匹配成功 原文: checks whether the match was successful (公共成员函数) | |
返回匹配的数目,在一个完全的结果状态 原文: returns the number of matches in a fully-established result state (公共成员函数) | |
返回的最大可能数目的子匹配 原文: returns the maximum possible number of sub-matches (公共成员函数) | |
| |
返回的特定子匹配的长度 原文: returns the length of the particular sub-match (公共成员函数) | |
返回的特定子匹配的第一个字符的位置 原文: returns the position of the first character of the particular sub-match (公共成员函数) | |
返回的字符序列为特定子如同 原文: returns the sequence of characters for the particular sub-match (公共成员函数) | |
返回指定的子匹配 (公共成员函数) | |
返回子序列之间的靶序列的开头和全匹配的开始. 原文: returns sub-sequence between the beginning of the target sequence and the beginning of the full match. (公共成员函数) | |
返回子序列结束之间的完全匹配和靶序列的结束 原文: returns sub-sequence between the end of the full match and the end of the target sequence (公共成员函数) | |
| |
迭代器返回的列表的开头的子匹配 原文: returns iterator to the beginning of the list of sub-matches (公共成员函数) | |
迭代器返回的列表的末尾的子匹配 原文: returns iterator to the end of the list of sub-matches (公共成员函数) | |
| |
formats match results for output (公共成员函数) | |
| |
交换的内容 (公共成员函数) |
[编辑] 非成员函数
字典的值进行比较,在这两个比赛的结果 原文: lexicographically compares the values in the two match result (函数模板) | |
专业的 std::swap() 算法原文: specializes the std::swap() algorithm(函数模板) |