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/w/cpp/regex/regex_traits/translate_nocase