regex_token_iterator Class
Classe d'itérateur pour les sous-correspondances.
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
};
Paramètres
BidIt
Le type d'itérateur pour les sous-correspondances.Elem
Le type d'éléments à rechercher.RXtraits
Classe Ctraits pour les éléments.
Notes
La classe de modèle décrit un objet itérateur vers l'avant constante.Conceptuellement, elle gère un objet d' regex_iterator qu'elle utilise pour rechercher des correspondances d'expression régulière dans une séquence de caractères.Il récupère des objets de type sub_match<BidIt> représentant les sous-correspondances identifiés par les valeurs d'index dans subs vectoriels stocké pour chaque correspondance d'expression régulière.
Une valeur d'index de -1 indique le début d'une séquence de caractères juste après la fin de la correspondance précédente d'expression régulière, ou exécuter au début de la séquence de caractères s'il n'y avait aucune correspondance précédente d'expression régulière, et l'extension mais sans au premier caractère de la correspondance actuelle d'expression régulière, ou à la fin de la séquence de caractères s'il n'existe aucune correspondance actuelle.Toute autre valeur d'index idx indique le contenu du groupe de capture conservé dans it.match[idx].
Configuration requise
en-tête : <regex>
l'espace de noms : type