libstdc++: std::sub_match< _BiIter > Class Template Reference (original) (raw)
#include <[regex](a00176%5Fsource.html)>
Public Types | |
---|---|
typedef __iter_traits::difference_type | difference_type |
typedef _BiIter | iterator |
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 |
void | swap (sub_match &__s) noexcept(__is_nothrow_swappable< _BiIter >::value) |
int | compare (const string_type &__s) const |
int | compare (const value_type *__s) const |
Public Attributes | |
---|---|
iterator | first |
bool | matched |
iterator | second |
Related Symbols | |
---|---|
(Note that these are not member symbols.) | |
template<typename _BiIter > | |
bool | operator== (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
template<typename _BiIter > | |
auto | operator (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) noexcept(__detail::__is_contiguous_iter< _BiIter >::value) |
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 _Alloc > | |
auto | operator (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Alloc > &__rhs) noexcept(__detail::__is_contiguous_iter< _Bi_iter >::value) |
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 > | |
auto | operator (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) noexcept(__detail::__is_contiguous_iter< _Bi_iter >::value) |
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 > | |
auto | operator (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) noexcept(__detail::__is_contiguous_iter< _Bi_iter >::value) |
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 _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 the same character type as the pattern matched by the regular expression.
A sub_match<Iter>
has a public base class of type pair<Iter, Iter>
, so inherits pair's data members named first
and second
. The iterators that make up the pair are the usual half-open interval referencing the actual original pattern matched.
Since
C++11
Definition at line 920 of file regex.h.
◆ difference_type
template<typename _BiIter >
typedef __iter_traits::difference_type std::sub_match< _BiIter >::difference_type
◆ iterator
template<typename _BiIter >
◆ string_type
template<typename _BiIter >
◆ value_type
template<typename _BiIter >
typedef __iter_traits::value_type std::sub_match< _BiIter >::value_type
template<typename _BiIter >
constexpr std::sub_match< _BiIter >::sub_match ( ) | inlineconstexprnoexcept |
---|
◆ compare() [1/3]
template<typename _BiIter >
Compares this sub_match
to a string.
Parameters
__s | A string to compare to this sub_match. |
---|
Return values
negative | This matched sequence will collate before __s. |
---|---|
zero | This matched sequence is equivalent to __s. |
positive | This matched sequence will collate after __s. |
Definition at line 994 of file regex.h.
◆ compare() [2/3]
template<typename _BiIter >
◆ compare() [3/3]
template<typename _BiIter >
int std::sub_match< _BiIter >::compare ( const value_type * __s) const | inline |
---|
Compares this sub_match
to a string.
Parameters
__s | A string to compare to this sub_match. |
---|
Return values
negative | This matched sequence will collate before __s. |
---|---|
zero | This matched sequence is equivalent to __s. |
positive | This matched sequence will collate after __s. |
Definition at line 998 of file regex.h.
◆ length()
template<typename _BiIter >
difference_type std::sub_match< _BiIter >::length ( ) const | inlinenoexcept |
---|
◆ operator string_type()
template<typename _BiIter >
Gets the matching sequence as a string.
Returns
the matching sequence as a string.
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.
Definition at line 954 of file regex.h.
References std::sub_match< _BiIter >::str().
◆ str()
template<typename _BiIter >
◆ swap()
template<typename _BiIter >
◆ first
template<typename _BiIter >
◆ matched
template<typename _BiIter >
◆ second
template<typename _BiIter >
The documentation for this class was generated from the following file: