|
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.