std::sub_match< _BiIter >(3cxx) | std::sub_match< _BiIter >(3cxx) |
NAME¶
std::sub_match< _BiIter >
SYNOPSIS¶
#include <regex.h>
Inherits std::pair< _BiIter, _BiIter >.
Public Types¶
typedef __iter_traits::difference_type
difference_type
typedef _BiIter first_type
The type of the first member. typedef _BiIter iterator
typedef _BiIter second_type
The type of the second member. typedef basic_string<
value_type > string_type
typedef __iter_traits::value_type value_type
Public Member Functions¶
int compare (const sub_match &__s)
const
Compares this and another matched sequence. difference_type length ()
const noexcept
Gets the length of the matching sequence. operator string_type ()
const
Gets the matching sequence as a string. string_type str ()
const
Gets the matching sequence as a string. constexpr void
swap (pair &__p) noexcept(__and_<
__is_nothrow_swappable< _BiIter >,
__is_nothrow_swappable< _BiIter > >::value)
Swap the first members and then the second members.
int compare (const string_type &__s)
const
Compares this sub_match to a string. int compare (const
value_type *__s) const
Compares this sub_match to a string.
Public Attributes¶
_BiIter first
The first member. bool matched
_BiIter second
The second member.
Related Symbols¶
(Note that these are not member symbols.)
constexpr pair< typename __decay_and_strip<
_BiIter >::__type, typename __decay_and_strip< _BiIter
>::__type > make_pair (_BiIter &&__x, _BiIter
&&__y)
A convenience wrapper for creating a pair from two objects.
template<typename _BiIter > bool operator== (const
sub_match< _BiIter > &__lhs, const
sub_match< _BiIter > &__rhs)
Tests the equivalence of two regular expression submatches.
template<typename _BiIter > bool operator!=
(const sub_match< _BiIter > &__lhs,
const sub_match< _BiIter > &__rhs)
Tests the inequivalence of two regular expression submatches.
template<typename _BiIter > bool operator<
(const sub_match< _BiIter > &__lhs,
const sub_match< _BiIter > &__rhs)
Tests the ordering of two regular expression submatches.
template<typename _BiIter > bool operator<=
(const sub_match< _BiIter > &__lhs,
const sub_match< _BiIter > &__rhs)
Tests the ordering of two regular expression submatches.
template<typename _BiIter > bool operator>=
(const sub_match< _BiIter > &__lhs,
const sub_match< _BiIter > &__rhs)
Tests the ordering of two regular expression submatches.
template<typename _BiIter > bool operator>
(const sub_match< _BiIter > &__lhs,
const sub_match< _BiIter > &__rhs)
Tests the ordering of two regular expression submatches.
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)
Tests the equivalence of a string and a regular expression submatch.
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)
Tests the inequivalence of a string and a regular expression submatch.
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)
Tests the ordering of a string and a regular expression submatch.
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)
Tests the ordering of a string and a regular expression submatch.
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)
Tests the ordering of a string and a regular expression submatch.
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)
Tests the ordering of a string and a regular expression submatch.
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)
Tests the equivalence of a regular expression submatch and a string.
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)
Tests the inequivalence of a regular expression submatch and a string.
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)
Tests the ordering of a regular expression submatch and a string.
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)
Tests the ordering of a regular expression submatch and a string.
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)
Tests the ordering of a regular expression submatch and a string.
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)
Tests the ordering of a regular expression submatch and a string.
template<typename _Bi_iter > bool operator==
(typename iterator_traits< _Bi_iter >::value_type
const *__lhs, const sub_match< _Bi_iter >
&__rhs)
Tests the equivalence of a C string and a regular expression submatch.
template<typename _Bi_iter > bool operator!=
(typename iterator_traits< _Bi_iter >::value_type
const *__lhs, const sub_match< _Bi_iter >
&__rhs)
Tests the inequivalence of a C string and a regular expression submatch.
template<typename _Bi_iter > bool operator<
(typename iterator_traits< _Bi_iter >::value_type
const *__lhs, const sub_match< _Bi_iter >
&__rhs)
Tests the ordering of a C string and a regular expression submatch.
template<typename _Bi_iter > bool operator>
(typename iterator_traits< _Bi_iter >::value_type
const *__lhs, const sub_match< _Bi_iter >
&__rhs)
Tests the ordering of a C string and a regular expression submatch.
template<typename _Bi_iter > bool operator>=
(typename iterator_traits< _Bi_iter >::value_type
const *__lhs, const sub_match< _Bi_iter >
&__rhs)
Tests the ordering of a C string and a regular expression submatch.
template<typename _Bi_iter > bool operator<=
(typename iterator_traits< _Bi_iter >::value_type
const *__lhs, const sub_match< _Bi_iter >
&__rhs)
Tests the ordering of a C string and a regular expression submatch.
template<typename _Bi_iter > bool operator==
(const sub_match< _Bi_iter > &__lhs,
typename iterator_traits< _Bi_iter >::value_type
const *__rhs)
Tests the equivalence of a regular expression submatch and a C string.
template<typename _Bi_iter > bool operator!=
(const sub_match< _Bi_iter > &__lhs,
typename iterator_traits< _Bi_iter >::value_type
const *__rhs)
Tests the inequivalence of a regular expression submatch and a string.
template<typename _Bi_iter > bool operator<
(const sub_match< _Bi_iter > &__lhs,
typename iterator_traits< _Bi_iter >::value_type
const *__rhs)
Tests the ordering of a regular expression submatch and a C string.
template<typename _Bi_iter > bool operator>
(const sub_match< _Bi_iter > &__lhs,
typename iterator_traits< _Bi_iter >::value_type
const *__rhs)
Tests the ordering of a regular expression submatch and a C string.
template<typename _Bi_iter > bool operator>=
(const sub_match< _Bi_iter > &__lhs,
typename iterator_traits< _Bi_iter >::value_type
const *__rhs)
Tests the ordering of a regular expression submatch and a C string.
template<typename _Bi_iter > bool operator<=
(const sub_match< _Bi_iter > &__lhs,
typename iterator_traits< _Bi_iter >::value_type
const *__rhs)
Tests the ordering of a regular expression submatch and a C string.
template<typename _Bi_iter > bool operator==
(typename iterator_traits< _Bi_iter >::value_type
const &__lhs, const sub_match< _Bi_iter
> &__rhs)
Tests the equivalence of a character and a regular expression submatch.
template<typename _Bi_iter > bool operator!=
(typename iterator_traits< _Bi_iter >::value_type
const &__lhs, const sub_match< _Bi_iter
> &__rhs)
Tests the inequivalence of a character and a regular expression submatch.
template<typename _Bi_iter > bool operator<
(typename iterator_traits< _Bi_iter >::value_type
const &__lhs, const sub_match< _Bi_iter
> &__rhs)
Tests the ordering of a character and a regular expression submatch.
template<typename _Bi_iter > bool operator>
(typename iterator_traits< _Bi_iter >::value_type
const &__lhs, const sub_match< _Bi_iter
> &__rhs)
Tests the ordering of a character and a regular expression submatch.
template<typename _Bi_iter > bool operator>=
(typename iterator_traits< _Bi_iter >::value_type
const &__lhs, const sub_match< _Bi_iter
> &__rhs)
Tests the ordering of a character and a regular expression submatch.
template<typename _Bi_iter > bool operator<=
(typename iterator_traits< _Bi_iter >::value_type
const &__lhs, const sub_match< _Bi_iter
> &__rhs)
Tests the ordering of a character and a regular expression submatch.
template<typename _Bi_iter > bool operator==
(const sub_match< _Bi_iter > &__lhs,
typename iterator_traits< _Bi_iter >::value_type
const &__rhs)
Tests the equivalence of a regular expression submatch and a character.
template<typename _Bi_iter > bool operator!=
(const sub_match< _Bi_iter > &__lhs,
typename iterator_traits< _Bi_iter >::value_type
const &__rhs)
Tests the inequivalence of a regular expression submatch and a character.
template<typename _Bi_iter > bool operator<
(const sub_match< _Bi_iter > &__lhs,
typename iterator_traits< _Bi_iter >::value_type
const &__rhs)
Tests the ordering of a regular expression submatch and a character.
template<typename _Bi_iter > bool operator>
(const sub_match< _Bi_iter > &__lhs,
typename iterator_traits< _Bi_iter >::value_type
const &__rhs)
Tests the ordering of a regular expression submatch and a character.
template<typename _Bi_iter > bool operator>=
(const sub_match< _Bi_iter > &__lhs,
typename iterator_traits< _Bi_iter >::value_type
const &__rhs)
Tests the ordering of a regular expression submatch and a character.
template<typename _Bi_iter > bool operator<=
(const sub_match< _Bi_iter > &__lhs,
typename iterator_traits< _Bi_iter >::value_type
const &__rhs)
Tests the ordering of a regular expression submatch and a character.
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)
Inserts a matched string into an output stream.
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)
Uses operator== to find the result. constexpr bool
operator> (const pair< _BiIter, _BiIter >
&__x, const pair< _BiIter, _BiIter >
&__y)
Uses operator< to find the result. constexpr bool
operator<= (const pair< _BiIter, _BiIter >
&__x, const pair< _BiIter, _BiIter >
&__y)
Uses operator< to find the result. constexpr bool
operator>= (const pair< _BiIter, _BiIter >
&__x, const pair< _BiIter, _BiIter >
&__y)
Uses operator< to find the result.
Detailed Description¶
template<typename _BiIter>¶
class std::sub_match< _BiIter >"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.
Member Typedef Documentation¶
typedef _BiIter std::pair< _BiIter , _BiIter >::first_type [inherited]¶
The type of the first member.
typedef _BiIter std::pair< _BiIter , _BiIter >::second_type [inherited]¶
The type of the second member.
Member Function Documentation¶
template<typename _BiIter > int std::sub_match< _BiIter >::compare (const string_type & __s) const [inline]¶
Compares this sub_match to a string.
Parameters
Return values
zero This matched sequence is equivalent to __s.
positive This matched sequence will collate after __s.
template<typename _BiIter > int std::sub_match< _BiIter >::compare (const sub_match< _BiIter > & __s) const [inline]¶
Compares this and another matched sequence.
Parameters
Return values
zero This matched sequence is equivalent to __s.
positive This matched sequence will collate after __s.
template<typename _BiIter > int std::sub_match< _BiIter >::compare (const value_type * __s) const [inline]¶
Compares this sub_match to a string.
Parameters
Return values
zero This matched sequence is equivalent to __s.
positive This matched sequence will collate after __s.
template<typename _BiIter > difference_type std::sub_match< _BiIter >::length () const [inline], [noexcept]¶
Gets the length of the matching sequence.
References std::distance(), std::pair< _BiIter, _BiIter >::first, and std::pair< _BiIter, _BiIter >::second.
template<typename _BiIter > std::sub_match< _BiIter >::operator string_type () const [inline]¶
Gets the matching sequence as a string.
Returns
This is the implicit conversion operator. It is identical to the str() member function except that it will want to pop up in unexpected places and cause a great deal of confusion and cursing from the unwary.
References std::sub_match< _BiIter >::str().
template<typename _BiIter > string_type std::sub_match< _BiIter >::str () const [inline]¶
Gets the matching sequence as a string.
Returns
References std::pair< _BiIter, _BiIter >::first, and std::pair< _BiIter, _BiIter >::second.
Referenced by std::sub_match< _BiIter >::operator string_type().
constexpr void std::pair< _BiIter , _BiIter >::swap (pair< _BiIter, _BiIter > & __p) [inline], [constexpr], [noexcept], [inherited]¶
Swap the first members and then the second members.
Friends And Related Symbol Documentation¶
constexpr pair< typename __decay_and_strip< _BiIter >::__type, typename __decay_and_strip< _BiIter >::__type > make_pair (_BiIter && __x, _BiIter && __y) [related]¶
A convenience wrapper for creating a pair from two objects.
Parameters
__y The second object.
Returns
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.
constexpr bool operator!= (const pair< _BiIter , _BiIter > & __x, const pair< _BiIter , _BiIter > & __y) [related]¶
Uses operator== to find the result.
constexpr bool operator< (const pair< _BiIter , _BiIter > & __x, const pair< _BiIter , _BiIter > & __y) [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.
constexpr bool operator<= (const pair< _BiIter , _BiIter > & __x, const pair< _BiIter , _BiIter > & __y) [related]¶
Uses operator< to find the result.
constexpr bool operator== (const pair< _BiIter , _BiIter > & __x, const pair< _BiIter , _BiIter > & __y) [related]¶
Two pairs of the same type are equal iff their members are equal.
constexpr bool operator> (const pair< _BiIter , _BiIter > & __x, const pair< _BiIter , _BiIter > & __y) [related]¶
Uses operator< to find the result.
constexpr bool operator>= (const pair< _BiIter , _BiIter > & __x, const pair< _BiIter , _BiIter > & __y) [related]¶
Uses operator< to find the result.
constexpr enable_if< __and_< __is_swappable< _BiIter >, __is_swappable< _BiIter > >::value >::type swap (pair< _BiIter , _BiIter > & __x, pair< _BiIter , _BiIter > & __y) [related]¶
Swap overload for pairs. Calls std::pair::swap().
Note
Member Data Documentation¶
_BiIter std::pair< _BiIter , _BiIter >::first [inherited]¶
The first member.
_BiIter std::pair< _BiIter , _BiIter >::second [inherited]¶
The second member.
Author¶
Generated automatically by Doxygen for libstdc++ from the source code.
libstdc++ |