Espacios de nombres
Variantes

Requisitos denominados de C++: RegexTraits (desde C++11)

De cppreference.com
 
 
Requisitos denominados de C++
Números aleatorios
Concurrencia
(C++11)
(C++11)
Rangos
Vista multidimensional
Otros

 

RegexTraits es una clase de rasgos que abstrae las operaciones necesarias para un tipo de carácter dado cuando se usan como parámetros de plantilla para std::basic_regex.

Requisitos

Dados

  • CharT, un tipo carácter
  • X, un tipo RegexTraits para el tipo CharT
  • u, un objeto de tipo X
  • v, un objeto de tipo const X
  • p, un valor de tipo const CharT*
  • I1, I2, iteradores de entrada
  • F1, F2, iteradores de avance
  • c, un valor de tipo const CharT
  • s, un objeto de tipo X::string_type
  • cs, un objeto de tipo const X::string_type
  • b, un valor de tipo bool
  • I, un valor de tipo int
  • cl, un objeto de tipo X::char_class_type
  • loc, un objeto de tipo X::locale_type
expresión tipo devuelto semántica
X::char_type CharT Se usa para referirse al tipo carácter.
X::string_type std::basic_string<CharT>
X::locale_type Un tipo CopyConstructible que representa la configuración regional usada por la clase de rasgos.
X::char_class_type Un tipo BitmaskType que representa una clasificación particular de caracteres.
X::length(p) std::size_t Dervuelve: el i más pequeño tal que p[i] == 0. La complejidad es lineal en i.
v.translate(c) X::char_type Devuelve: un carácter tal que para cualquier carácter d considerado equivalente a c, entonces v.translate(c) == v.translate(d).
v.translate_nocase(c) X::char_type Devuelve: un carácter tal que para cualquier carácter C considerado equivalente a c sin tener en cuenta las mayúsculas/minúsculas, entonces v.translate_nocase(c) == v.translate_nocase(C).
v.transform(F1, F2) X::string_type Devuelve: una clave de ordenación para la secuencias de caracteres designada por el rango del iterador [F1, F2), de manera que si la secuencia de caracteres [G1, G2) se ordena antes que la secuencia de caracteres [H1, H2), entonces v.transform(G1, G2) < v.transform(H1, H2).
v.transform_primary(F1, F2) X::string_type Devuelve: una clave de ordenación para la secuencia de caracteres designada por el rango del iterador [F1, F2), de manera que si la secuencia de caracteres [G1, G2) se ordena antes que la secuencia de caracteres [H1, H2) sin tener en cuneta las mayúsculas/minúsculas, entonces v.transform_primary(G1, G2) < v.transform_primary(H1, H2).
v.lookup_collatename(F1, F2) X::string_type Devuelve:
  • Una cadena vacía si la secuencia de caracteres no es un elemento de ordenación válido.
  • En otro caso una secuencia de caracteres que representa un elemento de ordenación consistente en la secuencia de caracteres designada por el rango del iterador [F1, F2)
v.lookup_classname(F1, F2, b) X::char_class_type Devuelve:
  • Convierte la secuencia de caracteres designada por el rango del iterador [F1, F2) en un valor de tipo BitmaskType se posteriormente se puede pasar a isctype
  • Los valores devueltos por lookup_classname se pueden combinar mediante OR bit a bit; el valor resultante representa la pertenencia a cualquiera de las clase de caracteres correspondientes.
  • Si b es verdadero, la máscara de bits devuelta es adecuada para hacer coincidir caracteres sin tener en cuenta mayúsculas o minúsculas.
  • Devuelve 0 si la secuencia de caracteres no es el nombre de una clase de caracteres reconocida por X.
  • El valor devuelto es independiente de las mayúsculas o minúsculas de los caracteres de la secuencia.
v.isctype(c, cl) bool Devuelve: si c es miembro de una de las clases de caracteres designadas por cl o no.
v.value(c, I) int Devuelve:
  • El valor representado por el dígito c en la base I si el carácter c es un dígito válido en la base I
  • en otro caso -1
u.imbue(loc) X::locale_type
  • Imbuye u con la configuración regional loc
  • Devuelve: La configuración regional anterior usada por u, si la hubiera
v.getloc() X::locale_type Devuelve: La configuración regional anterior usada por v, si la hubiera.


Biblioteca estándar

Las siguientes clases de la biblioteca estándar satisfacen RegexTraits:

template<> class regex_traits<char>;
template<> class regex_traits<wchar_t>;
(desde C++11)
(desde C++11)