regex_token_iterator Class
Clase de iterador para subcoincidencias.
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
};
Parámetros
BidIt
El iterador escrito para subcoincidencias.Elem
El tipo de elementos que se va a comparar.RXtraits
Clase de los rasgos para elementos.
Comentarios
La clase de plantilla describe un objeto constante de iteradores hacia delante.Conceptualmente, contiene un objeto de regex_iterator que utiliza para buscar coincidencias de expresiones regulares en una secuencia de caracteres.Extrae objetos de sub_match<BidIt> cuyas representa subcoincidencias identificados por los valores de índice en el vector almacenado subs para cada coincidencia de expresión regular.
Un valor de índice de -1 indica el principio de la secuencia de caracteres inmediatamente después del final de la coincidencia anterior de la expresión regular, el principio o al inicio de la secuencia de caracteres si no hubiera coincidencia anterior de la expresión regular, y ampliar pero no incluida al primer carácter de la coincidencia actual de expresión regular, o al final de la secuencia de caracteres si no hay ninguna coincidencia actual.Cualquier otro valor de índice idx señala el contenido del grupo de captura almacenado en it.match[idx].
Requisitos
encabezado: <regex>
espacio de nombres: std