std::basic_string::erase - cppreference.com
De cppreference.com
</tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody> </tbody> <tbody class="t-dcl-rev t-dcl-rev-num "> </tbody><tbody>
| (1) | ||
|
|
(hasta C++20) | |
|
|
(desde C++20) | |
| (2) | ||
|
|
(hasta C++11) | |
|
|
(desde C++11) (hasta C++20) |
|
|
|
(desde C++20) | |
| (3) | ||
|
|
(hasta C++11) | |
|
|
(desde C++11) (hasta C++20) |
|
|
|
(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).
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. |
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.
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)
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