std::basic_string::starts_with
De cppreference.com
<tbody>
</tbody>
constexpr bool starts_with( std::basic_string_view<CharT,Traits> sv ) const noexcept; |
(1) | (desde C++20) |
constexpr bool starts_with( CharT c ) const noexcept; |
(2) | (desde C++20) |
constexpr bool 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.
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. |
Valor de retorno
true si la cadena comienza con el prefijo dado, de otra forma, false.
Ejemplo
Ejecuta este código
#include <iostream>
#include <string_view>
#include <string>
template <typename TipoDePrefijo>
void prueba_prefijo_e_imprime(const std::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
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) |