17.3 类模板
sub_
match和
match_
results
类模板sub_match用于表示与具有特定标识的子表达式相匹配的字符序列。模板类match_result用于表示一个字符序列的集合,该集合表示一个正则表达式匹配的结果。集合的存储空间的分配和释放必须通过模板类match_results的成员函数来实现。类模板match_results应该满足分配件式容器和序列式容器的要求。此外,仅有的序列式容器的预定义操作是可以支持的。默认构造的match_result类型对象没有全部建立结果状态。一个匹配的结果是作为完全的正则表达式匹配结果。当match_result类对象没有准备完毕时,调用大部分成员函数的结果是不可预期的。
存储类sub_match对象时,其下标为零的内容代表第0个子表达式。通常,sub_match类的成员matched的值是真。类sub_match对象存储在下标为n的子正则表达式中。若子表达式n是一个正则表达式中的一部分,则sub_match类的成员matched的值是true,并且成员first和second表明了字符序列的范围;反之,成员matched的值是false,并且成员first和second指向被搜索到的序列末尾。