std::regex_traits - cppreference.com (original) (raw)
| | | | | --------------------------------------------- | | ------------- | | template< class CharT > class regex_traits; | | (since C++11) |
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.
[edit] Standard specializations
Two specializations of std::regex_traits are defined by the standard library:
| std::regex_traits |
|---|
| std::regex_traits<wchar_t> |
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.
[edit] 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 |
| char_class_type | Represents a character classification and is capable of holding an implementation specific set returned by lookup_classname. Must be a BitmaskType. |
[edit] Member functions
| (constructor) | constructs the regex_traits object (public member function) [edit] |
|---|---|
| length[static] | calculates the length of a null-terminated character string (public static member function) [edit] |
| translate | determines the equivalence key for a character (public member function) [edit] |
| translate_nocase | determines the case-insensitive equivalence key for a character (public member function) [edit] |
| transform | determines the sort key for the given string, used to provide collation order (public member function) [edit] |
| transform_primary | determines the primary sort key for the character sequence, used to determine equivalence class (public member function) [edit] |
| lookup_collatename | gets a collation element by name (public member function) [edit] |
| lookup_classname | gets a character class by name (public member function) [edit] |
| isctype | indicates membership in a localized character class (public member function) [edit] |
| value | translates the character representing a numeric digit into an integral value (public member function) [edit] |
| imbue | sets the locale (public member function) [edit] |
| getloc | gets the locale (public member function) [edit] |