std::basic_string_view<CharT,Traits>::ends_with
From ru.cppreference.net
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://ru.cppreference.net").ends_with(".com"sv) == true && std::string_view("https://ru.cppreference.net").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)
|
проверяет, начинается ли string view с заданного префикса
(public member function) |
|
(C++20)
|
проверяет, начинается ли строка с заданного префикса
(public member function of
std::basic_string<CharT,Traits,Allocator>
)
|
|
(C++20)
|
проверяет, заканчивается ли строка заданным суффиксом
(public member function of
std::basic_string<CharT,Traits,Allocator>
)
|
|
(C++23)
|
проверяет, содержит ли строка заданную подстроку или символ
(public member function of
std::basic_string<CharT,Traits,Allocator>
)
|
|
(C++23)
|
проверяет, содержит ли string view заданную подстроку или символ
(public member function) |
|
сравнивает два представления
(public member function) |