libstdc++
|
Public Types | |
typedef __iter_traits::difference_type | difference_type |
typedef _BiIter | first_type |
typedef _BiIter | iterator |
typedef _BiIter | second_type |
typedef basic_string< value_type > | string_type |
typedef __iter_traits::value_type | value_type |
Public Member Functions | |
int | compare (const sub_match &__s) const |
difference_type | length () const noexcept |
operator string_type () const | |
string_type | str () const |
constexpr void | swap (pair &__p) noexcept(__and_< __is_nothrow_swappable< _BiIter >, __is_nothrow_swappable< _BiIter >>::value) |
Public Attributes | |
_BiIter | first |
bool | matched |
_BiIter | second |
Related Functions | |
(Note that these are not member functions.) | |
typedef match_results< const char * > | cmatch |
typedef match_results< string::const_iterator > | smatch |
typedef match_results< const wchar_t * > | wcmatch |
typedef match_results< wstring::const_iterator > | wsmatch |
template<typename _BiIter > | |
bool | operator== (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
template<typename _BiIter > | |
bool | operator!= (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
template<typename _BiIter > | |
bool | operator< (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
template<typename _BiIter > | |
bool | operator<= (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
template<typename _BiIter > | |
bool | operator>= (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
template<typename _BiIter > | |
bool | operator> (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > | |
bool | operator== (const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > | |
bool | operator!= (const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > | |
bool | operator< (const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > | |
bool | operator> (const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > | |
bool | operator>= (const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > | |
bool | operator<= (const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > | |
bool | operator== (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__rhs) |
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > | |
bool | operator!= (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__rhs) |
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > | |
bool | operator< (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__rhs) |
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > | |
bool | operator> (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__rhs) |
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > | |
bool | operator>= (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__rhs) |
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > | |
bool | operator<= (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__rhs) |
template<typename _Bi_iter > | |
bool | operator== (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator!= (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator< (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator> (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator>= (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator<= (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator== (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) |
template<typename _Bi_iter > | |
bool | operator!= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) |
template<typename _Bi_iter > | |
bool | operator< (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) |
template<typename _Bi_iter > | |
bool | operator> (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) |
template<typename _Bi_iter > | |
bool | operator>= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) |
template<typename _Bi_iter > | |
bool | operator<= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) |
template<typename _Bi_iter > | |
bool | operator== (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator!= (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator< (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator> (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator>= (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator<= (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator== (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) |
template<typename _Bi_iter > | |
bool | operator!= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) |
template<typename _Bi_iter > | |
bool | operator< (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) |
template<typename _Bi_iter > | |
bool | operator> (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) |
template<typename _Bi_iter > | |
bool | operator>= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) |
template<typename _Bi_iter > | |
bool | operator<= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) |
template<typename _Ch_type , typename _Ch_traits , typename _Bi_iter > | |
basic_ostream< _Ch_type, _Ch_traits > & | operator<< (basic_ostream< _Ch_type, _Ch_traits > &__os, const sub_match< _Bi_iter > &__m) |
template<typename _Bi_iter , typename _Alloc > | |
bool | operator== (const match_results< _Bi_iter, _Alloc > &__m1, const match_results< _Bi_iter, _Alloc > &__m2) |
template<typename _Bi_iter , class _Alloc > | |
bool | operator!= (const match_results< _Bi_iter, _Alloc > &__m1, const match_results< _Bi_iter, _Alloc > &__m2) |
template<typename _Bi_iter , typename _Alloc > | |
void | swap (match_results< _Bi_iter, _Alloc > &__lhs, match_results< _Bi_iter, _Alloc > &__rhs) noexcept |
Matching, Searching, and Replacing | |
typedef regex_iterator< const char * > | cregex_iterator |
typedef regex_iterator< string::const_iterator > | sregex_iterator |
typedef regex_iterator< const wchar_t * > | wcregex_iterator |
typedef regex_iterator< wstring::const_iterator > | wsregex_iterator |
typedef regex_token_iterator< const char * > | cregex_token_iterator |
typedef regex_token_iterator< string::const_iterator > | sregex_token_iterator |
typedef regex_token_iterator< const wchar_t * > | wcregex_token_iterator |
typedef regex_token_iterator< wstring::const_iterator > | wsregex_token_iterator |
template<typename _Bi_iter , typename _Alloc , typename _Ch_type , typename _Rx_traits > | |
bool | regex_match (_Bi_iter __s, _Bi_iter __e, match_results< _Bi_iter, _Alloc > &__m, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __flags=regex_constants::match_default) |
template<typename _Bi_iter , typename _Ch_type , typename _Rx_traits > | |
bool | regex_match (_Bi_iter __first, _Bi_iter __last, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __flags=regex_constants::match_default) |
template<typename _Ch_type , typename _Alloc , typename _Rx_traits > | |
bool | regex_match (const _Ch_type *__s, match_results< const _Ch_type *, _Alloc > &__m, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __f=regex_constants::match_default) |
template<typename _Ch_traits , typename _Ch_alloc , typename _Alloc , typename _Ch_type , typename _Rx_traits > | |
bool | regex_match (const basic_string< _Ch_type, _Ch_traits, _Ch_alloc > &__s, match_results< typename basic_string< _Ch_type, _Ch_traits, _Ch_alloc >::const_iterator, _Alloc > &__m, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __flags=regex_constants::match_default) |
template<typename _Ch_traits , typename _Ch_alloc , typename _Alloc , typename _Ch_type , typename _Rx_traits > | |
bool | regex_match (const basic_string< _Ch_type, _Ch_traits, _Ch_alloc > &&, match_results< typename basic_string< _Ch_type, _Ch_traits, _Ch_alloc >::const_iterator, _Alloc > &, const basic_regex< _Ch_type, _Rx_traits > &, regex_constants::match_flag_type=regex_constants::match_default)=delete |
template<typename _Ch_type , class _Rx_traits > | |
bool | regex_match (const _Ch_type *__s, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __f=regex_constants::match_default) |
template<typename _Ch_traits , typename _Str_allocator , typename _Ch_type , typename _Rx_traits > | |
bool | regex_match (const basic_string< _Ch_type, _Ch_traits, _Str_allocator > &__s, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __flags=regex_constants::match_default) |
template<typename _Bi_iter , typename _Alloc , typename _Ch_type , typename _Rx_traits > | |
bool | regex_search (_Bi_iter __s, _Bi_iter __e, match_results< _Bi_iter, _Alloc > &__m, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __flags=regex_constants::match_default) |
template<typename _Bi_iter , typename _Ch_type , typename _Rx_traits > | |
bool | regex_search (_Bi_iter __first, _Bi_iter __last, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __flags=regex_constants::match_default) |
template<typename _Ch_type , class _Alloc , class _Rx_traits > | |
bool | regex_search (const _Ch_type *__s, match_results< const _Ch_type *, _Alloc > &__m, const basic_regex< _Ch_type, _Rx_traits > &__e, regex_constants::match_flag_type __f=regex_constants::match_default) |
template<typename _Ch_type , typename _Rx_traits > | |
bool | regex_search (const _Ch_type *__s, const basic_regex< _Ch_type, _Rx_traits > &__e, regex_constants::match_flag_type __f=regex_constants::match_default) |
template<typename _Ch_traits , typename _String_allocator , typename _Ch_type , typename _Rx_traits > | |
bool | regex_search (const basic_string< _Ch_type, _Ch_traits, _String_allocator > &__s, const basic_regex< _Ch_type, _Rx_traits > &__e, regex_constants::match_flag_type __flags=regex_constants::match_default) |
template<typename _Ch_traits , typename _Ch_alloc , typename _Alloc , typename _Ch_type , typename _Rx_traits > | |
bool | regex_search (const basic_string< _Ch_type, _Ch_traits, _Ch_alloc > &__s, match_results< typename basic_string< _Ch_type, _Ch_traits, _Ch_alloc >::const_iterator, _Alloc > &__m, const basic_regex< _Ch_type, _Rx_traits > &__e, regex_constants::match_flag_type __f=regex_constants::match_default) |
template<typename _Ch_traits , typename _Ch_alloc , typename _Alloc , typename _Ch_type , typename _Rx_traits > | |
bool | regex_search (const basic_string< _Ch_type, _Ch_traits, _Ch_alloc > &&, match_results< typename basic_string< _Ch_type, _Ch_traits, _Ch_alloc >::const_iterator, _Alloc > &, const basic_regex< _Ch_type, _Rx_traits > &, regex_constants::match_flag_type=regex_constants::match_default)=delete |
template<typename _Out_iter , typename _Bi_iter , typename _Rx_traits , typename _Ch_type , typename _St , typename _Sa > | |
_Out_iter | regex_replace (_Out_iter __out, _Bi_iter __first, _Bi_iter __last, const basic_regex< _Ch_type, _Rx_traits > &__e, const basic_string< _Ch_type, _St, _Sa > &__fmt, regex_constants::match_flag_type __flags=regex_constants::match_default) |
template<typename _Out_iter , typename _Bi_iter , typename _Rx_traits , typename _Ch_type > | |
_Out_iter | regex_replace (_Out_iter __out, _Bi_iter __first, _Bi_iter __last, const basic_regex< _Ch_type, _Rx_traits > &__e, const _Ch_type *__fmt, regex_constants::match_flag_type __flags=regex_constants::match_default) |
template<typename _Rx_traits , typename _Ch_type , typename _St , typename _Sa , typename _Fst , typename _Fsa > | |
basic_string< _Ch_type, _St, _Sa > | regex_replace (const basic_string< _Ch_type, _St, _Sa > &__s, const basic_regex< _Ch_type, _Rx_traits > &__e, const basic_string< _Ch_type, _Fst, _Fsa > &__fmt, regex_constants::match_flag_type __flags=regex_constants::match_default) |
template<typename _Rx_traits , typename _Ch_type , typename _St , typename _Sa > | |
basic_string< _Ch_type, _St, _Sa > | regex_replace (const basic_string< _Ch_type, _St, _Sa > &__s, const basic_regex< _Ch_type, _Rx_traits > &__e, const _Ch_type *__fmt, regex_constants::match_flag_type __flags=regex_constants::match_default) |
template<typename _Rx_traits , typename _Ch_type , typename _St , typename _Sa > | |
basic_string< _Ch_type > | regex_replace (const _Ch_type *__s, const basic_regex< _Ch_type, _Rx_traits > &__e, const basic_string< _Ch_type, _St, _Sa > &__fmt, regex_constants::match_flag_type __flags=regex_constants::match_default) |
template<typename _Rx_traits , typename _Ch_type > | |
basic_string< _Ch_type > | regex_replace (const _Ch_type *__s, const basic_regex< _Ch_type, _Rx_traits > &__e, const _Ch_type *__fmt, regex_constants::match_flag_type __flags=regex_constants::match_default) |
constexpr enable_if< __and_< __is_swappable< _BiIter >, __is_swappable< _BiIter > >::value >::type | swap (pair< _BiIter, _BiIter > &__x, pair< _BiIter, _BiIter > &__y) noexcept(noexcept(__x.swap(__y))) |
constexpr bool | operator== (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y) |
constexpr bool | operator< (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y) |
constexpr bool | operator!= (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y) |
constexpr bool | operator> (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y) |
constexpr bool | operator<= (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y) |
constexpr bool | operator>= (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y) |
constexpr pair< typename __decay_and_strip< _BiIter >::__type, typename __decay_and_strip< _BiIter >::__type > | make_pair (_BiIter &&__x, _BiIter &&__y) |
int | compare (const string_type &__s) const |
int | compare (const value_type *__s) const |
A sequence of characters matched by a particular marked sub-expression.
An object of this class is essentially a pair of iterators marking a matched subexpression within a regular expression pattern match. Such objects can be converted to and compared with std::basic_string objects of a similar base character type as the pattern matched by the regular expression.
The iterators that make up the pair are the usual half-open interval referencing the actual original pattern matched.
|
inherited |
The type of the first
member.
Definition at line 214 of file stl_pair.h.
|
inherited |
The type of the second
member.
Definition at line 215 of file stl_pair.h.
|
inlineconstexprnoexceptinherited |
Swap the first members and then the second members.
Definition at line 439 of file stl_pair.h.
|
related |
A convenience wrapper for creating a pair from two objects.
__x | The first object. |
__y | The second object. |
The C++98 standard says the objects are passed by reference-to-const, but C++03 says they are passed by value (this was LWG issue #181).
Since C++11 they have been passed by forwarding reference and then forwarded to the new members of the pair. To create a pair with a member of reference type, pass a reference_wrapper
to this function.
Definition at line 567 of file stl_pair.h.
|
related |
Uses operator==
to find the result.
Definition at line 496 of file stl_pair.h.
|
related |
Defines a lexicographical order for pairs.
For two pairs of the same type, P
is ordered before Q
if P.first
is less than Q.first
, or if P.first
and Q.first
are equivalent (neither is less than the other) and P.second
is less than Q.second
.
Definition at line 488 of file stl_pair.h.
|
related |
Uses operator<
to find the result.
Definition at line 507 of file stl_pair.h.
|
related |
Two pairs of the same type are equal iff their members are equal.
Definition at line 466 of file stl_pair.h.
|
related |
Uses operator<
to find the result.
Definition at line 502 of file stl_pair.h.
|
related |
Uses operator<
to find the result.
Definition at line 514 of file stl_pair.h.
|
related |
Swap overload for pairs. Calls std::pair::swap().
Definition at line 533 of file stl_pair.h.
|
inherited |
The first member.
Definition at line 217 of file stl_pair.h.
|
inherited |
The second member.
Definition at line 218 of file stl_pair.h.