Freigeben über


sub_match Class

Beschreibt eine Teilübereinstimmung.

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;
    };

Parameter

  • BidIt
    Der Iterator für Teilübereinstimmungen.

Hinweise

Die Vorlagenklasse beschreibt ein Objekt, das eine Sequenz von Zeichen festlegen, die übereinstimmende eine Erfassungsgruppe in einem Aufruf von regex_match Function oder regex_search Function.match_results Class-Objekten des Typs beizubehalten ein Array dieser Objekten; für jede erfasste Gruppe im regulären Ausdruck an, der in der Suche verwendet wurde.

Wenn die Erfassungsgruppe nicht gefunden wurde, wird der Datenmember des Objekts matched false an, und die beiden Iteratoren first und second (geerbt von der Basis std::pair) sind gleich.Wenn die Erfassungsgruppe gefunden wurde, enthält matched True an, first der Iterator zeigt das erste Zeichen in der Zeichenfolge auf eine Übereinstimmung vorlag, die die Erfassungsgruppe und die second Iterator zeigt eine Position hinter dem letzten Zeichen in der Zeichenfolge Ziel der übereinstimmenden die Erfassungsgruppe.Beachten Sie, dass für eine Übereinstimmung, die der Länge 0 (null matched-Member der Wert true, sind die beiden Iteratoren zeigen, und beide gleich der Position der Übereinstimmung.

Eine der Länge 0 Übereinstimmung kann auftreten, wenn eine Erfassungsgruppe nur aus einer Assertion besteht oder einer Wiederholung, die Null zulässig, wiederholt.Beispiele:

Ziel „^“ stimmt die Zeichenfolge „a“ ab. sub_match das Objekt entsprechend Erfassungsgruppe 0 enthält Iteratoren an, die beide auf das erste Zeichen in der Sequenz zeigen.

(b „a*“ b) stimmt mit der Bb sequence „Ziel“ ab. sub_match das Objekt entsprechend Erfassungsgruppe 1 enthält Iteratoren an, die beide auf das zweite Zeichen in der Sequenz zeigen.

Anforderungen

Header: <regex>

Namespace: std

Siehe auch

Referenz

<regex>

sub_match Class

regex_match Function

regex_search Function

Weitere Ressourcen

<regex> Member