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/cpp/regex/match_results/operator_cmp