Namespaces
Variants

std::basic_string_view<CharT,Traits>:: starts_with

From cppreference.net
constexpr bool starts_with ( basic_string_view sv ) const noexcept ;
(1) (desde C++20)
constexpr bool starts_with ( CharT ch ) const noexcept ;
(2) (desde C++20)
constexpr bool starts_with ( const CharT * s ) const ;
(3) (desde C++20)

Comprueba si la vista de cadena comienza con el prefijo dado, donde

1) el prefijo es una vista de cadena. Efectivamente retorna basic_string_view ( data ( ) , std:: min ( size ( ) , sv. size ( ) ) ) == sv .
2) el prefijo es un solo carácter. Efectivamente retorna ! empty ( ) && Traits :: eq ( front ( ) , ch ) .
3) el prefijo es una cadena de caracteres terminada en nulo. Efectivamente retorna starts_with ( basic_string_view ( s ) ) .

Contenidos

Parámetros

sv - una vista de cadena que puede ser el resultado de conversión implícita de std::basic_string
ch - un carácter individual
s - una cadena de caracteres terminada en nulo

Valor de retorno

true si la vista de cadena comienza con el prefijo proporcionado, false en caso contrario.

Notas

Macro de prueba de características Valor Std Característica
__cpp_lib_starts_ends_with 201711L (C++20) Comprobación de prefijo y sufijo de cadena: starts_with() y ends_with()

Ejemplo

#include <cassert>
#include <string_view>
int main()
{
    using namespace std::literals;
    assert
    (""
        // (1) starts_with( basic_string_view )
        && "https://cppreference.net"sv.starts_with("http"sv) == true
        && "https://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
    );
}

Véase también

(C++20)
verifica si la vista de cadena termina con el sufijo dado
(función miembro pública)
verifica si la cadena comienza con el prefijo dado
(función miembro pública de std::basic_string<CharT,Traits,Allocator> )
(C++20)
verifica si la cadena termina con el sufijo dado
(función miembro pública de std::basic_string<CharT,Traits,Allocator> )
(C++23)
verifica si la cadena contiene la subcadena o carácter dado
(función miembro pública de std::basic_string<CharT,Traits,Allocator> )
(C++23)
verifica si la vista de cadena contiene la subcadena o carácter dado
(función miembro pública)
compara dos vistas
(función miembro pública)