std::basic_string<CharT,Traits,Allocator>::ends_with
Материал из cppreference.com
< cpp | string | basic string
constexpr bool ends_with( std::basic_string_view<CharT, Traits> 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) Строковое представление sv (которое может быть результатом неявного преобразования из другого
std::basic_string
).2) Один символ ch.
3) Строка символов s, завершающаяся нулём.
Все три перегрузки фактически возвращают std::basic_string_view<CharT, Traits>(data(), size()).ends_with(x), где x
это параметр.
Содержание |
[править] Параметры
sv | — | строковое представление, которое может быть результатом неявного преобразования из другого std::basic_string
|
ch | — | один символ |
s | — | строка символов, завершающаяся нулём |
[править] Возвращаемое значение
true, если строка заканчивается указанным суффиксом, false иначе.
[править] Примечание
Макрос Тестирования функциональности | Значение | Стандарт | Функциональность |
---|---|---|---|
__cpp_lib_starts_ends_with |
201711L | (C++20) | Проверка префикса и суффикса строки: starts_with() и ends_with() |
[править] Пример
Запустить этот код
#include <cassert> #include <string> #include <string_view> int main() { using namespace std::literals; const auto str = "Hello, C++20!"s; assert ("" && str.ends_with("C++20!"sv) // (1) && !str.ends_with("c++20!"sv) // (1) && str.ends_with("C++20!"s) // (1) неявное преобразование строки в string_view && !str.ends_with("c++20!"s) // (1) неявное преобразование строки в string_view && str.ends_with('!') // (2) && !str.ends_with('?') // (2) && str.ends_with("C++20!") // (3) && !str.ends_with("c++20!") // (3) ); }
[править] Смотрите также
(C++20) |
проверяет, начинается ли строка с заданного префикса (public функция-элемент) |
(C++20) |
проверяет, начинается ли строковое представление с заданного префикса (public функция-элемент std::basic_string_view<CharT,Traits> )
|
(C++20) |
проверяет, заканчивается ли строковое представление заданным суффиксом (public функция-элемент std::basic_string_view<CharT,Traits> )
|
(C++23) |
проверяет, содержит ли строка данную подстроку или символ (public функция-элемент) |
(C++23) |
проверяет, содержит ли строковое представление заданную подстроку или символ (public функция-элемент std::basic_string_view<CharT,Traits> )
|
сравнивает две строки (public функция-элемент) | |
возвращает подстроку (public функция-элемент) |