std::basic_string_view<CharT,Traits>::ends_with
constexpr bool ends_with( basic_string_view sv ) const noexcept; | (1) | (начиная с C++20) |
constexpr bool ends_with( CharT ch ) const noexcept; | (2) | (начиная с C++20) |
constexpr bool ends_with( const CharT* s ) const; | (3) | (начиная с C++20) |
Проверяет, заканчивается ли представление строки заданным суффиксом, где
1) суффикс является представлением строки. Фактически возвращает
size() >= sv.size() && compare(size() - sv.size(), npos, sv) == 0.
2) суффикс является отдельным символом. Фактически возвращает
!empty() && Traits::eq(back(), ch).
3) суффикс является строкой символов с завершающим нулевым символом. Фактически возвращает
ends_with(basic_string_view(s)).Параметры
| sv | - | представление строки, которое может быть результатом неявного преобразования из std::basic_string |
| ch | - | отдельный символ |
| s | - | строка символов с завершающим нулевым символом |
Возвращаемое значение
true, если представление строки заканчивается указанным суффиксом, и false в противном случае.
Примечания
| Макрос проверки возможностей | Значение | Стандарт | Возможность |
|---|---|---|---|
__cpp_lib_starts_ends_with | 201711L | (C++20) | Проверка префикса и суффикса строки: starts_with() и ends_with() |
Пример
#include <cassert>
#include <string_view>
int main()
{
using namespace std::literals;
assert
(""
// (1) ends_with( basic_string_view sv )
&& std::string_view("https://cppreference.com").ends_with(".com"sv) == true
&& std::string_view("https://cppreference.com").ends_with(".org"sv) == false
// (2) ends_with( CharT c )
&& std::string_view("C++20").ends_with('0') == true
&& std::string_view("C++20").ends_with('3') == false
// (3) ends_with( const CharT* s )
&& std::string_view("string_view").ends_with("view") == true
&& std::string_view("string_view").ends_with("View") == false
);
}
См. также
|
(C++20) | проверяет, начинается ли представление строки с заданного префикса (открытая функция-член) |
|
(C++20) | проверяет, начинается ли строка с заданного префикса (открытая функция-член std::basic_string<CharT,Traits,Allocator>) |
|
(C++20) | проверяет, заканчивается ли строка заданным суффиксом (открытая функция-член std::basic_string<CharT,Traits,Allocator>) |
|
(C++23) | проверяет, содержит ли строка заданную подстроку или символ (открытая функция-член std::basic_string<CharT,Traits,Allocator>) |
|
(C++23) | проверяет, содержит ли представление строки заданную подстроку или символ (открытая функция-член) |
| сравнивает два представления (открытая функция-член) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/string/basic_string_view/ends_with