Namespaces
Variants

C++ named requirements: RegexTraits (since C++11)

From cppreference.net
C++ named requirements

RegexTraits est une classe de traits qui abstrait les opérations nécessaires pour un type de caractère donné lorsqu'il est utilisé comme paramètre de type template pour std:: basic_regex .

Exigences

Étant donné

  • CharT , un type de caractère
  • X , un type RegexTraits pour le type CharT
  • u , un objet de type X
  • v , un objet de type const X
  • p , une valeur de type const CharT *
  • I1, I2 , itérateurs d'entrée
  • F1, F2 , itérateurs avant
  • c , une valeur de type const CharT
  • s , un objet de type X :: string_type
  • cs , un objet de type const X :: string_type
  • b , une valeur de type bool
  • I , une valeur de type int
  • cl , un objet de type X :: char_class_type
  • loc , un objet de type X :: locale_type


expression type de retour sémantique
X :: char_type CharT Utilisé pour désigner le type de caractère.
X :: string_type std:: basic_string < CharT >
X :: locale_type Un type CopyConstructible qui représente les paramètres régionaux utilisés par la classe de traits.
X :: char_class_type Un type BitmaskType qui représente une classification de caractères particulière.
X :: length ( p ) std:: size_t Retourne : le plus petit i tel que p [ i ] == 0 . La complexité est linéaire en i .
v. translate ( c ) X :: char_type Retourne : un caractère tel que pour tout caractère d considéré comme équivalent à c , alors v. translate ( c ) == v. translate ( d ) .
v. translate_nocase ( c ) X :: char_type Retourne : un caractère tel que pour tout caractère C considéré comme équivalent à c sans tenir compte de la casse, alors v. translate_nocase ( c ) == v. translate_nocase ( C ) .
v. transform ( F1, F2 ) X :: string_type Retourne : une clé de tri pour la séquence de caractères désignée par la plage d'itérateurs [ F1, F2 ) telle que si la séquence de caractères [ G1, G2 ) se trie avant la séquence de caractères [ H1, H2 ) , alors v. transform ( G1, G2 ) < v. transform ( H1, H2 ) .
v. transform_primary ( F1, F2 ) X :: string_type Retourne : une clé de tri pour la séquence de caractères désignée par la plage d'itérateurs [ F1, F2 ) telle que si la séquence de caractères [ G1, G2 ) se trie avant la séquence de caractères [ H1, H2 ) sans tenir compte de la casse, alors v. transform_primary ( G1, G2 ) < v. transform_primary ( H1, H2 ) .
v. lookup_collatename ( F1, F2 ) X :: string_type Retourne :
  • Une chaîne vide si la séquence de caractères n'est pas un élément de collation valide
  • Une séquence de caractères qui représente l'élément de collation constitué de la séquence de caractères désignée par la plage d'itérateurs [ F1, F2 ) sinon
v. lookup_classname ( F1, F2, b ) X :: char_class_type
  • Convertit la séquence de caractères désignée par la plage d'itérateurs [ F1, F2 ) en une valeur d'un BitmaskType qui peut ensuite être passée à isctype
  • Les valeurs retournées par lookup_classname peuvent être combinées avec un OU binaire ; la valeur résultante représente l'appartenance à l'une ou l'autre des classes de caractères correspondantes
  • Si b est true, le masque de bits retourné est adapté pour la correspondance des caractères sans tenir compte de leur casse.
  • Retourne 0 si la séquence de caractères n'est pas le nom d'une classe de caractères reconnue par X .
  • La valeur retournée doit être indépendante de la casse des caractères dans la séquence.
v. isctype ( c, cl ) bool Retourne : si c est membre d'une des classes de caractères désignées par cl ou non.
v. value ( c, I ) int Retourne :
  • La valeur représentée par le chiffre c en base I si le caractère c est un chiffre valide en base I
  • - 1 sinon
u. imbue ( loc ) X :: locale_type
  • Imprègne u avec la locale loc
  • Retourne : La locale précédente utilisée par u si elle existe
v. getloc ( ) X :: locale_type Retourne : La locale précédemment utilisée par v si elle existe.


Bibliothèque standard

RegexTraits est satisfait par les classes suivantes de la bibliothèque standard :

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