std::regex_traits<CharT>::transform
template< class ForwardIt > string_type transform( ForwardIt first, ForwardIt last) const; |
Получает ключевое значение сортировки для последовательности символов [first, last), таким образом, что если ключевое значение сортировки меньше другого ключевого значения сортировки с operator<, то последовательность символов, которая произвела первое ключевое значение сортировки, предшествует последовательности символов, которая произвела второе ключевое значение сортировки, в порядке сортировки текущего языкового набора.
Например, когда установлен флаг регулярного выражения std::regex_constants::collate, то последовательность [a-b] соответствовала бы какому-то символу c1, если traits.transform("a") <= traits.transform(c1) <= traits.transform("b"). Обратите внимание, что эта функция принимает последовательность символов в качестве аргумента для адаптации к диапазонам, определенным как [[.ae.]-d].
Специализации стандартной библиотеки std::regex_traits возвращают std::use_facet<std::collate<CharT>>(getloc()).transform(str.data(), str.data() + str.length()) для некоторой временной строки str, построенной как string_type str(first, last).
Параметры
| first, last | - | пара LegacyForwardIterators, которая определяет последовательность символов для сравнения |
| Требования к типу | ||
-ForwardIt должна удовлетворять требованиям LegacyForwardIterator. |
||
Значение результата
Ключевое значение сортировки для последовательности символов [first, last) в текущем языковом наборе.
Пример
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/regex/regex_traits/transform