home | help
std::basic_...:starts_with(3)  C++ Standard Libary std::basic_...: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 ch ) 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   ba-
     sic_string_view(data(),
	std::min(size(), sv.size())) == sv.
	2) the prefix is a single character. Effectively returns !empty() &&
	Traits::eq(front(), ch).
	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
	ch - a single character
	s  - a null-terminated character string

Return value
	true  if  the  string view begins with the provided prefix, false other-
     wise.

Notes
	    Feature-test macro	    Value    Std		    Feature
	__cpp_lib_starts_ends_with 201711L  (C++20)  String  prefix  and  suffix
     checking:
						   starts_with() and ends_with()

Example
     // Run this code

      #include <cassert>
      #include <string_view>

      int main()
      {
	  using namespace std::literals;

	  assert
	  (""
	      // (1) starts_with( basic_string_view )
	      && "https://cppreference.com"sv.starts_with("http"sv) == true
	      && "https://cppreference.com"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
	  );
      }

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::ba-
     sic_string<CharT,Traits,Allocator>)

	ends_with   checks if the string ends with the given suffix
	(C++20) 	 (public      member	  function	of	std::ba-
     sic_string<CharT,Traits,Allocator>)

	contains    checks if the string contains the given substring or charac-
     ter
	(C++23) 	 (public      member	  function	of	std::ba-
     sic_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
		    (public member function)

http://cppreference.com 	   2024.06.10	   std::basic_...:starts_with(3)

home | help