sub_match 类

描述一个子匹配项。

template<class BidIt>
    class sub_match
        : public std::pair<BidIt, BidIt> {
public:
    bool matched;
    int compare(const sub_match& right) const;
    int compare(const basic_string<value_type>& right) const;
    int compare(const value_type *right) const;
    difference_type length() const;
    operator basic_string<value_type>() const;
    basic_string<value_type> str() const;
    typedef typename iterator_traits<BidIt>::value_type value_type;
    typedef typename iterator_traits<BidIt>::difference_type difference_type;
    typedef BidIt iterator;
    };

参数

  • BidIt
    子迭代器的类型。

备注

模板类描述指定字符序列对捕获组在调用到 regex_match 函数regex_search 函数的对象。 类型 match_results 类 对象持有一个这些对象,可在搜索中使用的正则表达式中的每个捕获组。

如果捕获组没有匹配对象的数据成员 matched 对负错误,因此,两迭代器 first 和 second (继承自基 std::pair) 相同。 如果捕获组匹配,matched 应用,指向第一个字符的 first 迭代器指向中的捕获组匹配目标序列和迭代器指向 second 过最后一个字符的位置中的捕获组匹配目标序列。 为成员 matched 适用的零长度与请注意,两迭代数相等的,并且,与都指向的位置。

零长度才能出现匹配,则捕获组仅包含为零的断言时,允许重复或重复。 例如:

“^”与目标序列“a”;与捕获组 0 对应的 sub_match 对象保持该迭代器两个到第一个点。序列。

“a bc () a* b”与目标序列“bb”;与捕获组 1 对应的 sub_match 对象保持该迭代器两个到第二个点在序列。

要求

标头: <regex>

命名空间: std

请参见

参考

<regex>

sub_match 类

regex_match 函数

regex_search 函数

其他资源

regex 成员