std::basic_string_view::starts_with(3)

NAME
std::basic_string_view::starts_with - std::basic_string_view::starts_with

Synopsis
   constexpr bool starts_with( basic_string_view sv ) const noexcept; (1) (since C++20)
   constexpr bool starts_with( CharT c ) const noexcept; (2) (since C++20)
   constexpr bool starts_with( const CharT* s ) const; (3) (since C++20)
   Checks if the string view begins with the given prefix, where
   1) the prefix is a string view. Effectively returns substr(0, sv.size()) == sv
   2) the prefix is a single character. Effectively returns !empty() &&
   Traits::eq(front(), c)
   3) the prefix is a null-terminated character string. Effectively returns
   starts_with(basic_string_view(s))

Parameters
   sv - a string view which may be a result of implicit conversion from
        std::basic_string
   c - a single character
   s - a null-terminated character string

Return value
   true if the string view begins with the provided prefix, false otherwise.

Notes
   Feature-test macro: __cpp_lib_starts_ends_with

Example
// Run this code
 #include <iostream>
 #include <string_view>
 auto main() -> int
 {
     using namespace std::literals;
     std::cout
         << std::boolalpha
         // bool starts_with(basic_string_view x) const noexcept;
         << "https://cppreference.com"sv.starts_with("http"sv) << ' ' // true
         << "https://cppreference.com"sv.starts_with("ftp"sv) << ' ' // false
         // bool starts_with(CharT x) const noexcept;
         << "C++20"sv.starts_with('C') << ' ' // true
         << "C++20"sv.starts_with('J') << ' ' // false
         // bool starts_with(const CharT* x) const;
         << std::string_view("string_view").starts_with("string") << ' ' // true
         << std::string_view("string_view").starts_with("String") << ' ' // false
         << '\n';
 }

Output:
 true false true false true false

See also
   ends_with checks if the string view ends with the given suffix
   (C++20) (public member function)
   starts_with checks if the string starts with the given prefix
   (C++20) (public member function of std::basic_string<CharT,Traits,Allocator>)
   ends_with checks if the string ends with the given suffix
   (C++20) (public member function of std::basic_string<CharT,Traits,Allocator>)
   contains checks if the string contains the given substring or character
   (C++23) (public member function of std::basic_string<CharT,Traits,Allocator>)
   contains checks if the string view contains the given substring or character
   (C++23) (public member function)
   compare compares two views
   (C++17) (public member function)