| std::sub_match(3) | C++ Standard Libary | std::sub_match(3) | 
NAME¶
std::sub_match - std::sub_match
Synopsis¶
 Defined in header <regex>
  
   template<class BidirIt> (since C++11)
  
   class sub_match;
  
   The class template sub_match is used by the regular expression engine to
    denote
  
   sequences of characters matched by marked sub-expressions. A match is a
    [begin, end)
  
   pair within the target range matched by the regular expression, but with
    additional
  
   observer functions to enhance code clarity.
  
   Only the default constructor is publicly accessible. Instances of sub_match
    are
  
   normally constructed and populated as a part of a std::match_results
    container
  
   during the processing of one of the regex algorithms.
  
   The member functions return defined default values unless the matched member
    is
  
   true.
  
   sub_match inherits from std::pair<BidirIt, BidirIt>, although it cannot
    be treated
  
   as a std::pair object because member functions such as swap and assignment
    will not
  
   work as expected.
Type requirements¶
 -
  
   BidirIt must meet the requirements of LegacyBidirectionalIterator.
Specializations¶
Several specializations for common character sequence types are provided:
  
   Defined in header <regex>
  
   Type Definition
  
   csub_match sub_match<const char*>
  
   wcsub_match sub_match<const wchar_t*>
  
   ssub_match sub_match<std::string::const_iterator>
  
   wssub_match sub_match<std::wstring::const_iterator>
Member types¶
 Member type Definition
  
   iterator BidirIt
  
   value_type std::iterator_traits<BidirIt>::value_type
  
   difference_type std::iterator_traits<BidirIt>::difference_type
  
   string_type std::basic_string<value_type>
Member objects¶
 bool matched Indicates if this match was successful
  
   (public member object)
Inherited from std::pair
  
   BidirIt first Start of the match sequence.
  
   (public member object)
  
   BidirIt second One-past-the-end of the match sequence.
  
   (public member object)
Member functions¶
 constructor constructs the match object
  
   (public member function)
Observers¶
 length returns the length of the match (if any)
  
   (public member function)
  
   str converts to the underlying string type
  
   operator string_type (public member function)
  
   compare compares matched subsequence (if any)
  
   (public member function)
Non-member functions¶
 operator==
  
   operator!=
  
   operator<
  
   operator<=
  
   operator>
  
   operator>= compares a sub_match with another sub_match, a string, or a
  
   operator<=> character
  
   (removed in C++20) (function template)
  
   (removed in C++20)
  
   (removed in C++20)
  
   (removed in C++20)
  
   (removed in C++20)
  
   (C++20)
  
   operator<< outputs the matched character subsequence
  
   (function template)
See also¶
 regex_token_iterator iterates through the specified
    sub-expressions within all regex
  
   (C++11) matches in a given string or through unmatched substrings
  
   (class template)
| 2022.07.31 | http://cppreference.com |