Freigeben über


regex_token_iterator Class

Iterator Klasse für Teilübereinstimmungen.

template<class BidIt, class Elem = iterator_traits<BidIt>::value_type,
    class RXtraits = regex_traits<Elem> >
        class regex_token_iterator {
public:
    typedef basic_regex<Elem, RXtraits> regex_type;
    typedef sub_match<BidIt> value_type;
    typedef std::forward_iterator_tag iterator_category;
    typedef std::ptrdiff_t difference_type;
    typedef const sub_match<BidIt> *pointer;
    typedef const sub_match<BidIt>& reference;

    regex_token_iterator();
    regex_token_iterator(BidIt first, BidIt last,
        const regex_type& re, int submatch = 0,
        regex_constants::match_flag_type f = regex_constants::match_default);
    regex_token_iterator(BidIt first, BidIt last,
        const regex_type& re, const std::vector<int> submatches,
        regex_constants::match_flag_type f = regex_constants::match_default);
    template<std::size_t N>
    regex_token_iterator(BidIt first, BidIt last,
        const regex_type& re, const int (&submatches)[N],
        regex_constants::match_flag_type f = regex_constants::match_default);

    bool operator==(const regex_token_iterator& right);
    bool operator!=(const regex_token_iterator& right);
    const basic_string<Elem>& operator*();
    const basic_string<Elem> *operator->();
    regex_token_iterator& operator++();
    regex_token_iterator& operator++(int);
private:
    regex_iterator<BidIt, Elem, RXtraits> it; // exposition only
    vector<int> subs;                         // exposition only
    int pos;                                  // exposition only
    };

Parameter

  • BidIt
    Der Iterator für Teilübereinstimmungen.

  • Elem
    Der Typ der Elemente für eine Übereinstimmung.

  • RXtraits
    Merkmalklasse für Elemente.

Hinweise

Die Vorlagenklasse beschreibt ein konstantes Vorwärtsiterator Objekt.Im Prinzip kann ein regex_iterator-Objekt an, das er verwendet, um für Übereinstimmungen des regulären Ausdrucks in einer Zeichenfolge gesucht werden soll.Es extrahiert die Objekte vom Typ sub_match<BidIt> die Teilentsprechungen darstellt, die durch die Indexwerte in gespeicherten Vektor subs für jede Übereinstimmung eines regulären Ausdrucks angegeben sind.

Ein Indexwert -1 legt die Zeichensequenz, wobei Position unmittelbar nach dem Ende der vorherigen Übereinstimmung eines regulären Ausdrucks Anfang oder am Anfang der Zeichenfolge, wenn keine vorherige Übereinstimmung eines regulären Ausdrucks gegeben hat, und das Erweitern jedoch nicht einschließlich dem ersten Zeichen der aktuellen Übereinstimmung eines regulären Ausdrücken oder am Ende der Zeichenfolge fest, wenn keine aktuelle Übereinstimmung vorliegt.Jeder andere Indexwert idx legt den Inhalt der Erfassungsgruppe fest, die in it.match[idx]angehalten wird.

Anforderungen

Header: <regex>

Namespace: std

Siehe auch

Referenz

<regex>

regex_token_iterator Class

regex_iterator Class

Weitere Ressourcen

<regex> Member