std::basic_...starts_with(3)
π NAME π
Okay bestie, welcome to std::basic_...starts_with(3) from the C++ Standard Libary (yes, that's the manual's spelling, not a typo I made π). The NAME entry is literally std::basic_string::starts_with β std::basic_string::starts_with. No cap, that's the whole thing. π
β¨ Synopsis β¨
(1) (since C++20)
constexpr bool starts_with( std::basic_string_view<CharT,Traits> sv ) const noexcept;
(2) (since C++20)
constexpr bool starts_with( CharT ch ) const noexcept;
(3) (since C++20)
constexpr bool starts_with( const CharT* s ) const;
This checks if the string begins with the given prefix. The prefix may be one of the following:
- A string view
sv(which may be a result of implicit conversion from anotherstd::basic_string). - A single character
ch. - A null-terminated character string
s.
All three overloads effectively return std::basic_string_view<CharT, Traits>(data(), size()).starts_with(x), where x is the parameter.
πΈ Parameters πΈ
svβ a string view which may be a result of implicit conversion from anotherstd::basic_stringchβ a single charactersβ a null-terminated character string
π¦ Return value π¦
true if the string begins with the provided prefix, false otherwise. That's it, bestie β binary slay. π
π Notes π
Feature-test macro vibes:
- Feature-test macro β
__cpp_lib_starts_ends_with - Value β
201711L - Std β
(C++20) - Feature β String prefix and suffix checking:
starts_with()andends_with()
β¨ Example β¨
Run this code, bestie π
#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)
);
}
π See also π
ends_withβ checks if the string ends with the given suffix (C++20) (public member function)starts_withβ checks if the string view starts with the given prefix (C++20) (public member function ofstd::basic_string_view<CharT,Traits>)ends_withβ checks if the string view ends with the given suffix (C++20) (public member function ofstd::basic_string_view<CharT,Traits>)containsβ checks if the string contains the given substring or character (C++23) (public member function)containsβ checks if the string view contains the given substring or character (C++23) (public member function ofstd::basic_string_view<CharT,Traits>)compareβ compares two strings (public member function)substrβ returns a substring (public member function)
Source: http://cppreference.com Β· Version/date: 2024.06.10 Β· Page: std::basic_...starts_with(3) β mwah πβ¨
π¦ where this page comes from
- nixpkgs unstable: stdman 2024.07.05
- opensuse-leap 16.0: stdman 2024.07.05-bp160.1.9 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms