##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# std::regex_traits::transform

From cppreference.com
< cpp‎ | regex‎ | regex traits

template< class ForwardIt > string_type transform( ForwardIt first, ForwardIt last) const |  |

Obtains the sort key for the character sequence `[first, last)`, such that if a sort key compares less than another sort key with operator<, then the character sequence that produced the first sort key comes before the character sequence that produced the second sort key, in the currently imbued locale's collation order.

For example when the regex flag std::regex_constants::collate is set, then the sequence `[a-b]` would match some character `c1` if traits.transform("a") <= traits.transform(c1) <= traits.transform("b"). Note that this function takes a character sequence as the argument to accomodate to the ranges defined like [[.ae.]-d].

Standard library specializations of std::regex_traits return std::use_facet<std::collate<CharT>>(getloc()).transform(&*str.begin(), &*str.begin() + str.length()) for some temporary string `str` constructed as string_type str(first, last).

### [edit] Parameters

first, last | - | a pair of `ForwardIterator`s which determines the sequence of characters to compare
Type requirements
- `ForwardIt` must meet the requirements of `ForwardIterator`.

### [edit] Return value

The collation key for the character sequence `[first, last)` in the currently imbued locale.

### [edit] Example

| This section is incomplete Reason: no example

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/regex/regex_traits/transform&oldid=51151"
Category:

- Todo no example