std::basic_string::starts_with
De cppreference.com
< cpp | string | basic string
constexprbool starts_with(std::basic_string_view<CharT,Traits> sv ) constnoexcept; | (1) | (desde C++20) |
constexprbool starts_with( CharT c )constnoexcept; | (2) | (desde C++20) |
constexprbool starts_with(const CharT* s )const; | (3) | (desde C++20) |
Comprueba si la cadena comienza con el prefijo dado. El prefijo puede ser uno de los siguientes:
1) Una vista sobre cadena
sv
(que puede ser un resultado de una conversión implícita de otra cadena (std::basic_string
)).2) Un solo carácter
c
.3) Una cadena de caracteres terminada en nulo
s
.Efectivamente, las tres sobrecargas devuelven std::basic_string_view<CharT, Traits>(data(), size()).starts_with(x), donde x
es el parámetro.
Contenido |
[editar]Parámetros
sv | - | Una vista sobre cadena (que puede ser un resultado de una conversión implícita de otra cadena (std::basic_string )). |
c | - | Un solo carácter. |
s | - | Una cadena de caracteres terminada en nulo. |
[editar]Valor de retorno
true si la cadena comienza con el prefijo dado, de otra forma, false.
[editar]Ejemplo
Ejecuta este código
#include <iostream>#include <string_view>#include <string> template<typename TipoDePrefijo>void prueba_prefijo_e_imprime(conststd::string& str, TipoDePrefijo prefijo){std::cout<<'\''<< str <<"' comienza con '"<< prefijo <<"': "<< str.starts_with(prefijo)<<'\n';} int main(){std::boolalpha(std::cout);auto holaMundo =std::string("hola mundo"); prueba_prefijo_e_imprime(holaMundo, std::string_view("hola")); prueba_prefijo_e_imprime(holaMundo, std::string_view("hasta luego")); prueba_prefijo_e_imprime(holaMundo, 'h'); prueba_prefijo_e_imprime(holaMundo, 'x');}
Salida:
'hola mundo' comienza con 'hola': true 'hola mundo' comienza con 'hasta luego': false 'hola mundo' comienza con 'h': true 'hola mundo' comienza con 'x': false
[editar]Véase también
(C++20) | Comprueba si la cadena termina con el sufijo dado (función miembro pública) |
(C++20) | Comprueba si la vista sobre cadena comienza con un prefijo dado. (función miembro pública de std::basic_string_view<CharT,Traits> ) |
(C++20) | Comprueba si la vista sobre cadena termina con un sufijo dado. (función miembro pública de std::basic_string_view<CharT,Traits> ) |
Compara dos cadenas (función miembro pública) | |
Devuelve una subcadena (función miembro pública) |