std::regex_traits<CharT>::transform

来自cppreference.com
< cpp‎ | regex‎ | regex traits
template< class ForwardIt >
string_type transform( ForwardIt first, ForwardIt last) const;

获得字符序列 [firstlast) 的排序键,满足若排序键以 operator< 小于另一排序键,则在当前浸染的本地环境的校排顺序中,产生第一排序键的字符序列优先于产生第二排序键的字符序列。

例如,在设置正则表达式标志 std::regex_constants::collate 时,若 traits.transform("a") <= traits.transform(c1) <= traits.transform("b") 则序列 [a-b] 会匹配字符 c1。注意此函数接收字符序列为实参,以适应定义为如 [[.ae.]-d] 的范围。

对于某个构造为 string_type str(first, last) 的临时字符串 strstd::regex_traits 的标准库特化返回 std::use_facet<std::collate<CharT>>(getloc()).transform(str.data(), str.data() + str.length())

参数

first, last - 一对向前迭代器,确定要比较的字符序列
类型要求
-
ForwardIt 必须满足老式向前迭代器 (LegacyForwardIterator)

返回值

字符序列 [firstlast) 在当前浸染的本地环境中的校排键。

示例