operator==,!=(std::match_results)
Определено в заголовке <regex> | ||
|---|---|---|
template< class BidirIt, class Alloc >
bool operator==( match_results<BidirIt,Alloc>& lhs,
match_results<BidirIt,Alloc>& rhs );
| (1) | (с C++11) |
template< class BidirIt, class Alloc >
bool operator!=( match_results<BidirIt,Alloc>& lhs,
match_results<BidirIt,Alloc>& rhs );
| (2) | (с C++11) (до C++20) |
Сравнивает два объекта match_results.
Два объекта match_results равны, если выполнены следующие условия:
- ни один из объектов не готов, или
- оба результата совпадения готовы и выполнены следующие условия:
-
lhs.empty()иrhs.empty(), или -
!lhs.empty()и!rhs.empty()и выполнены следующие условия: -
lhs.prefix() == rhs.prefix() -
lhs.size() == rhs.size() && std::equal(lhs.begin(), lhs.end(), rhs.begin()) -
lhs.suffix() == rhs.suffix()
1) Проверяет, равны ли
lhs и rhs.
2) Проверяет, не равны ли
lhs и rhs. | Оператор | (с C++20) |
Параметры
| lhs, rhs | - | объекты результатов совпадения для сравнения |
| Требования к типу | ||
-BidirIt должно удовлетворять требованиям LegacyBidirectionalIterator. |
||
-Alloc должно удовлетворять требованиям Allocator. |
||
Возвращаемое значение
1)
true, если lhs и rhs равны, false в противном случае.
2)
true, если lhs и rhs не равны, false в противном случае.Исключение
Может выбросить исключение, определяемое реализацией.
Пример
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/regex/match_results/operator_cmp