Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/regex/sub match"

From cppreference.com
< cpp‎ | regex
m (Text replace - "{{tdcl list begin" to "{{dcl list begin")
m (Text replace - "{{tdcl list end" to "{{dcl list end")
Line 25: Line 25:
 
{{tdcl list item | {{tt|ssub_match}} | {{c|sub_match<std::string::const_iterator>}}}}
 
{{tdcl list item | {{tt|ssub_match}} | {{c|sub_match<std::string::const_iterator>}}}}
 
{{tdcl list item | {{tt|wssub_match}} | {{c|sub_match<std::wstring::const_iterator>}}}}
 
{{tdcl list item | {{tt|wssub_match}} | {{c|sub_match<std::wstring::const_iterator>}}}}
{{tdcl list end}}
+
{{dcl list end}}
  
 
===Member types===
 
===Member types===
Line 34: Line 34:
 
{{tdcl list item | {{tt|difference_type}} | {{c|std::iterator_traits<BidirectionalIterator>::difference_type}}}}
 
{{tdcl list item | {{tt|difference_type}} | {{c|std::iterator_traits<BidirectionalIterator>::difference_type}}}}
 
{{tdcl list item | {{tt|string_type}} | {{c|std::basic_string<value_type>}}}}
 
{{tdcl list item | {{tt|string_type}} | {{c|std::basic_string<value_type>}}}}
{{tdcl list end}}
+
{{dcl list end}}
  
 
===Member objects===
 
===Member objects===
 
{{dcl list begin}}
 
{{dcl list begin}}
 
{{dcl list item| {{tt|matched}} | Indicates if this match was successful.}}
 
{{dcl list item| {{tt|matched}} | Indicates if this match was successful.}}
{{tdcl list end}}
+
{{dcl list end}}
 
{{inherited | [[cpp/utility/pair | {{small|std::}}pair]] |
 
{{inherited | [[cpp/utility/pair | {{small|std::}}pair]] |
 
{{dcl list begin}}
 
{{dcl list begin}}
 
{{dcl list item| {{tt|first}} | Start of the match sequence.}}
 
{{dcl list item| {{tt|first}} | Start of the match sequence.}}
 
{{dcl list item| {{tt|second}} | One-past-the-end of the match sequence.}}
 
{{dcl list item| {{tt|second}} | One-past-the-end of the match sequence.}}
{{tdcl list end}}
+
{{dcl list end}}
 
}}
 
}}
  

Revision as of 01:31, 12 June 2012

Template:cpp/regex/sub match/sidebar

Defined in header <regex>
template<

    class BidirectionalIterator

> class sub_match;
(since C++11)

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<BidirectionalIterator, BidirectionalIterator>, although it cannot be treated as a std::pair object because member functions such as swap and assignment will not work as expected.

Several specializations for common character sequence types are provided:

Template:tdcl list headerTemplate:tdcl list hitemTemplate:tdcl list itemTemplate:tdcl list itemTemplate:tdcl list itemTemplate:tdcl list item

Contents

Member types

Template:tdcl list hitemTemplate:tdcl list itemTemplate:tdcl list itemTemplate:tdcl list itemTemplate:tdcl list item

Member objects

matched Indicates if this match was successful.

Inherited from std::pair

first Start of the match sequence.
second One-past-the-end of the match sequence.

Member functions

Template:cpp/regex/sub match/dcl list constructorTemplate:cpp/regex/sub match/dcl list lengthTemplate:cpp/regex/sub match/dcl list strTemplate:cpp/regex/sub match/dcl list compare
Observers

Non-member functions

Template:cpp/regex/dcl list operator cmp
outputs the matched character subsequence
(function template)

See also

iterates through regex submatches
(class template)