std::basic_string<CharT,Traits,Allocator>::starts_with
constexpr bool
starts_with( std::basic_string_view<CharT,Traits> 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) Представление строки
sv (которое может быть результатом неявного преобразования из другого std::basic_string).
2) Отдельный символ
ch.
3) Строка символов с нулевым терминатором
s.Все три перегрузки фактически возвращают std::basic_string_view<CharT, Traits>(data(), size()).starts_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.starts_with("He"sv) // (1)
&& !str.starts_with("he"sv) // (1)
&& str.starts_with("He"s) // (1) implicit conversion string to string_view
&& !str.starts_with("he"s) // (1) implicit conversion string to string_view
&& str.starts_with('H') // (2)
&& !str.starts_with('h') // (2)
&& str.starts_with("He") // (3)
&& !str.starts_with("he") // (3)
);
}
См. также
|
(C++20) | проверяет, заканчивается ли строка указанным суффиксом (общедоступная функция-член) |
|
(C++20) | проверяет, начинается ли представление строки с указанного префикса (общедоступная функция-член std::basic_string_view<CharT,Traits>) |
|
(C++20) | проверяет, заканчивается ли представление строки указанным суффиксом (общедоступная функция-член std::basic_string_view<CharT,Traits>) |
|
(C++23) | проверяет, содержит ли строка указанную подстроку или символ (общедоступная функция-член) |
|
(C++23) | проверяет, содержит ли представление строки указанную подстроку или символ (общедоступная функция-член std::basic_string_view<CharT,Traits>) |
| сравнивает две строки (общедоступная функция-член) |
|
| возвращает подстроку (общедоступная функция-член) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/string/basic_string/starts_with