operator==,!=(std::match_results)

From cppreference.com
< cpp‎ | regex‎ | match results
 
 
Regular expressions library
Classes
(哋它亢++11)
(哋它亢++11)
(哋它亢++11)
Algorithms
(哋它亢++11)
(哋它亢++11)
(哋它亢++11)
Iterators
(哋它亢++11)
(哋它亢++11)
Exceptions
(哋它亢++11)
Traits
(哋它亢++11)
Constants
(哋它亢++11)
(哋它亢++11)
(哋它亢++11)
Regex Grammar
 
 
Defined in header <regex>
template< class BidirIt, class Alloc >

bool operator==( match_results<BidirIt,Alloc>& lhs,

                 match_results<BidirIt,Alloc>& rhs );
(1) (since 哋它亢++11)
template< class BidirIt, class Alloc >

bool operator!=( match_results<BidirIt,Alloc>& lhs,

                 match_results<BidirIt,Alloc>& rhs );
(2) (since 哋它亢++11)
(until 哋它亢++20)

Compares two match_results objects.

Two match_results are equal if the following conditions are met:

  • neither of the objects is ready, or
  • both match results are ready and the following conditions are met:
  • lhs.empty() and rhs.empty(), or
  • !lhs.empty() and !rhs.empty() and the following conditions are met:
  • lhs.prefix() == rhs.prefix()
  • lhs.size() == rhs.size() && std::equal(lhs.begin(), lhs.end(), rhs.begin())
  • lhs.suffix() == rhs.suffix()
1) Checks if lhs and rhs are equal.
2) Checks if lhs and rhs are not equal.

The != operator is synthesized from operator==.

(since 哋它亢++20)

Parameters

lhs, rhs - match results to compare
Type requirements
-
BidirIt must meet the requirements of LegacyBidirectionalIterator.
-
Alloc must meet the requirements of Allocator.

Return value

1) true if lhs and rhs are equal, false otherwise.
2) true if lhs and rhs are not equal, false otherwise.

Exceptions

May throw implementation-defined exceptions.

Example