FreeBSD Manual Pages
std::regex_..._collatename(3) C++ Standard Libarystd::regex_..._collatename(3) NAME std::regex_traits::lookup_collatename - std::regex_traits::lookup_col- latename Synopsis template< class ForwardIt > string_type lookup_collatename( ForwardIt first, ForwardIt last ) const; If the character sequence [first, last) represents the name of a valid collating element in the currently imbued locale, returns the name of that collating element. Otherwise, returns an empty string. Collating elements are the symbols found in POSIX regular expres- sions between [. and .]. For example, [.a.] matches the character a in the C locale. [.tilde.] matches the character ~ in the C locale as well. [.ch.] matches the digraph ch in Czech locale, but generates std::regex_error with error code std::regex_constants::error_collate in most other locales. Parameters first, last - a pair of iterators which determines the sequence of characters that represents a collating element name Type requirements - ForwardIt must meet the requirements of LegacyForwardIterator. Return value The representation of the named collating element as a character string. Example // Run this code #include <iostream> #include <string> #include <regex> struct noisy_traits : std::regex_traits<char> { template< class Iter > string_type lookup_collatename( Iter first, Iter last ) const { string_type result = regex_traits::lookup_collatename(first, last); std::cout << "regex_traits<>::lookup_collatename(\"" << string_type(first, last) << "\") returns \"" << result << "\"\n"; return result; } }; int main() { std::string str = "z|}a"; // C locale collation order: x,y,z,{,|,},~ std::basic_regex<char, noisy_traits> re("[x-[.tilde.]]*a", std::regex::basic); std::cout << std::boolalpha << std::regex_match(str, re) << '\n'; } Output: regex_traits<>::lookup_collatename("tilde") returns "~" true http://cppreference.com 2022.07.31 std::regex_..._collatename(3)
NAME | Synopsis | Parameters | Type requirements | Return value | Example | Output:
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::regex_traits::lookup_collatename&sektion=3&manpath=FreeBSD+Ports+15.0>
