std::regex_traits<CharT>::transform
From cppreference.com
< cpp | regex | regex traits
| template< class ForwardIt > string_type transform( ForwardIt first, ForwardIt last) const; |
||
現在のロケールで設定されている照合順序において、ソートキーが別のソートキーよりも小さい (operator<で比較) 場合、最初のソートキーが生成した文字シーケンスが2番目のソートキーが生成した文字シーケンスよりも前に来るように、文字シーケンス [first, last) のソートキーを取得します。
例えば、正規表現フラグ std::regex_constants::collate が設定されている場合、シーケンス [a-b] は、traits.transform("a") <= traits.transform(c1) <= traits.transform("b") の場合、文字 c1 にマッチします。この関数が引数として文字シーケンスを受け取るのは、[[.ae.]-d] のように定義された範囲に対応するためです。
std::regex_traits の標準ライブラリによる特殊化では、string_type str(first, last) として構築された一時的な文字列 str に対して、std::use_facet<std::collate<CharT>>(getloc()).transform(str.data(), str.data() + str.length()) を返します。
[編集] パラメータ
| first, last | - | 比較対象の文字シーケンスを決定する LegacyForwardIterators のペア |
| 型要件 | ||
-ForwardIt は LegacyForwardIterator の要件を満たさなければなりません。 | ||
[編集] 戻り値
現在のロケールにおける、文字シーケンス [first, last) の照合キー。
[編集] 例
| このセクションは未完成です 理由: 例がありません |