std::regex_traits<CharT>::translate_nocase
CharT translate_nocase( CharT c ) const; |
Получает ключ сравнения для символа c, такой что все символы, эквивалентные этому символу в установленной локали без учёта различий регистра, если они есть, дают один и тот же ключ.
Когда библиотеке регулярных выражений необходимо сопоставить два символа c1 и c2, а флаг std::regex_constants::icase равен true, она выполняет regex_traits<>::translate_nocase(c1) == regex_traits<>::translate_nocase(c2).
Специализации std::regex_traits стандартной библиотеки возвращают std::use_facet<std::ctype<CharT>>(getloc()).tolower(c), то есть преобразуют c в нижний регистр, используя текущую установленную локаль.
Параметры
| c | - | символ, эквивалентность которого необходимо проверить без учёта регистра |
Возвращаемое значение
Ключ сравнения без учёта регистра для c в текущей установленной локали.
Пример
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/regex/regex_traits/translate_nocase