Espacios de nombres
Variantes
Acciones

std::basic_string::erase

De cppreference.com
< cpp‎ | string‎ | basic string
 
 
 
std::basic_string
 
(1)
basic_string& erase( size_type index = 0, size_type count = npos );
(hasta C++20)
constexpr basic_string& erase( size_type index = 0, size_type count = npos );
(desde C++20)
(2)
iterator erase( iterator position );
(hasta C++11)
iterator erase( const_iterator position );
(desde C++11)
(hasta C++20)
constexpr iterator erase( const_iterator position );
(desde C++20)
(3)
iterator erase( iterator first, iterator last );
(hasta C++11)
iterator erase( const_iterator first, const_iterator last );
(desde C++11)
(hasta C++20)
constexpr iterator erase( const_iterator first, const_iterator last );
(desde C++20)

Elimina los caracteres especificados de la cadena.

1) Elimina min(count, size() - index) caracteres iniciando en index.
2) Elimina el carácter en la posición position.
3) Elimina los caracteres en el rango [first, last).

Contenido

[editar] Parámetros

index - Primer carácter a eliminar.
count - Número de caracteres a eliminar.
position - Iterador al carácter a eliminar.
first, last - Rango de caracteres a eliminar.

[editar] Valor de retorno

1) *this
2) Iterador que apunta al carácter que sigue inmediatamente al carácter borrado, o end() si no existe tal carácter.
3) Iterador que apunta al carácter last al que se apuntaba antes del borrado, o end() si no existe tal carácter.

[editar] Excepciones

1) std::out_of_range si index > size().
2-3) (Ninguna)

En cualquier caso, si se lanza una excepción por alguna razón, esta función no tiene efecto (garantía de excepción fuerte). (desde C++11)

[editar] Ejemplo

#include <iostream>
#include <algorithm>
#include <string>
 
int main()
{
    std::string s = "Esto es un ejemplo";
    std::cout << s << '\n';
 
    s.erase(0, 5); // Borrar "Esto "
    std::cout << s << '\n';
 
    s.erase(std::find(s.begin(), s.end(), ' ')); // Borrar ' '
    std::cout << s << '\n';
 
    s.erase(s.find(' ')); // Recortar desde ' ' hasta el final de la cadena
    std::cout << s << '\n';
}

Salida:

Esto es un ejemplo
es un ejemplo
esun ejemplo
esun

[editar] Véase también

Borra el contenido
(función miembro pública) [editar]