Scroll to navigation

std::regex_traits(3) C++ Standard Libary std::regex_traits(3)


std::regex_traits - std::regex_traits


Defined in header <regex>
template< class CharT > (since C++11)
class regex_traits;

The type trait template regex_traits supplies std::basic_regex with the set of types
and functions necessary to operate on the type CharT.

Since many of regex operations are locale-sensitive (when
std::regex_constants::collate flag is set), the regex_traits class typically holds
an instance of a std::locale as a private member.

Standard specializations

Two specializations of std::regex_traits are defined by the standard library:


These specializations make it possible to use std::basic_regex<char> (aka
std::regex) and std::basic_regex<wchar_t> (aka std::wregex). To use std::basic_regex
with other character types (for example, char32_t), a user-provided trait class must
be used.

Member types

Type Definition
char_type CharT
string_type std::basic_string<CharT>
locale_type The locale used for localized behavior in the regular expression.
Must be CopyConstructible
Represents a character classification and is capable of holding an
char_class_type implementation specific set returned by lookup_classname. Must be a

Member functions

constructor constructs the regex_traits object
(public member function)
length calculates the length of a null-terminated character string
[static] (public static member function)
translate determines the equivalence key for a character
(public member function)
translate_nocase determines the case-insensitive equivalence key for a character
(public member function)
determines the sort key for the given string, used to provide
transform collation order
(public member function)
determines the primary sort key for the character sequence, used
transform_primary to determine equivalence class
(public member function)
lookup_collatename gets a collation element by name
(public member function)
lookup_classname gets a character class by name
(public member function)
isctype indicates membership in a localized character class
(public member function)
translates the character representing a numeric digit into an
value integral value
(public member function)
imbue sets the locale
(public member function)
getloc gets the locale
(public member function)