Namespaces
Variants
Views
Actions

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

From cppreference.com
< cpp‎ | regex
m (Text replace - "{{mark c++11 feature}}" to "{{mark since c++11}}")
m (Text replace - "{{cpp|" to "{{c|")
Line 10: Line 10:
 
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.
 
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:  object of this class are normally constructed and populated as a part of a {{cpp|std::match_results}} container during the processing of one of the regex algorithms.
+
Only the default constructor is publicly accessible:  object of this class are normally constructed and populated as a part of a {{c|std::match_results}} container during the processing of one of the regex algorithms.
  
The member functions return defined default values unless the {{cpp|matched}} member is {{tt|true}}.
+
The member functions return defined default values unless the {{c|matched}} member is {{tt|true}}.
  
Inherits {{cpp|std::pair<BidirectionalIterator, BidirectionalIterator>}}, although this type can not be treated as a {{cpp|std::pair}} object because member functions such as swap and assignment will not work as expected.
+
Inherits {{c|std::pair<BidirectionalIterator, BidirectionalIterator>}}, although this type can not be treated as a {{c|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:  
 
Several specializations for common character sequence types are provided:  
Line 21: Line 21:
 
{{tdcl list header | regex}}
 
{{tdcl list header | regex}}
 
{{tdcl list hitem | Type | Definition}}
 
{{tdcl list hitem | Type | Definition}}
{{tdcl list item | {{tt|csub_match}} | {{cpp|sub_match<const char*>}}}}
+
{{tdcl list item | {{tt|csub_match}} | {{c|sub_match<const char*>}}}}
{{tdcl list item | {{tt|wcsub_match}} | {{cpp|sub_match<const wchar_t*>}}}}
+
{{tdcl list item | {{tt|wcsub_match}} | {{c|sub_match<const wchar_t*>}}}}
{{tdcl list item | {{tt|ssub_match}} | {{cpp|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}} | {{cpp|sub_match<std::wstring::const_iterator>}}}}
+
{{tdcl list item | {{tt|wssub_match}} | {{c|sub_match<std::wstring::const_iterator>}}}}
 
{{tdcl list end}}
 
{{tdcl list end}}
  
Line 30: Line 30:
 
{{tdcl list begin}}
 
{{tdcl list begin}}
 
{{tdcl list hitem | Member type | Definition}}
 
{{tdcl list hitem | Member type | Definition}}
{{tdcl list item | {{tt|iterator}} | {{cpp|BidirectionalIterator}}}}
+
{{tdcl list item | {{tt|iterator}} | {{c|BidirectionalIterator}}}}
{{tdcl list item | {{tt|value_type}} | {{cpp|std::iterator_traits<BidirectionalIterator>::value_type}}}}
+
{{tdcl list item | {{tt|value_type}} | {{c|std::iterator_traits<BidirectionalIterator>::value_type}}}}
{{tdcl list item | {{tt|difference_type}} | {{cpp|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}} | {{cpp|std::basic_string<value_type>}}}}
+
{{tdcl list item | {{tt|string_type}} | {{c|std::basic_string<value_type>}}}}
 
{{tdcl list end}}
 
{{tdcl list end}}
  

Revision as of 20:46, 19 April 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: object of this class 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.

Inherits std::pair<BidirectionalIterator, BidirectionalIterator>, although this type can not 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 begin Template:tdcl list header Template:tdcl list hitem Template:tdcl list item Template:tdcl list item Template:tdcl list item Template:tdcl list item Template:tdcl list end

Contents

Member types

Template:tdcl list begin Template:tdcl list hitem Template:tdcl list item Template:tdcl list item Template:tdcl list item Template:tdcl list item Template:tdcl list end

Member objects

Template:tdcl list begin |- class="t-dsc" | matched | Indicates if this match was successful. |-

Template:tdcl list end

Inherited from std::pair

Template:tdcl list begin |- class="t-dsc" | first | Start of the match sequence. |-

|- class="t-dsc" | second | One-past-the-end of the match sequence. |-

Template:tdcl list end

Member functions

constructs the match object
(public member function)
Observers
Returns the length of the match (if any).
(public member function)
Converts to the underlying string type.
(public member function)
Compares matched subsequence (if any).
(public member function)

Non-member functions

Template:cpp/regex/dcl list operator cmp