std::basic_string_view<CharT,Traits>::starts_with
С сайта ru.cppreference.net
constexpr bool starts_with( basic_string_view sv ) const noexcept;
|
(1) | (начиная с C++20) |
constexpr bool starts_with( CharT ch ) const noexcept;
|
(2) | (начиная с C++20) |
constexpr bool starts_with( const CharT* s ) const;
|
(3) | (начиная с C++20) |
Проверяет, начинается ли строковое представление с указанного префикса, где
1) префикс является строковым представлением. Фактически возвращает
basic_string_view(data(), std::min(size(), sv.size())) == sv.2) префикс является одиночным символом. Фактически возвращает
!empty() && Traits::eq(front(), ch).3) префикс является null-терминированной строкой символов. Фактически возвращает
starts_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) starts_with( basic_string_view ) && "https://ru.cppreference.net"sv.starts_with("http"sv) == true && "https://ru.cppreference.net"sv.starts_with("ftp"sv) == false // (2) starts_with( CharT ) && "C++20"sv.starts_with('C') == true && "C++20"sv.starts_with('J') == false // (3) starts_with( const CharT* ) && std::string_view("string_view").starts_with("string") == true && std::string_view("string_view").starts_with("String") == 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)
|
проверяет, содержит ли строковое представление заданную подстроку или символ
(публичная функция-член) |
|
сравнивает два представления
(публичная функция-член) |