Métodos Comunes de Cadenas
Desliza para mostrar el menú
Añadir
Hemos visto que no es posible agregar nuevos caracteres al final de una cadena utilizando índices. Sin embargo, existe un método conveniente .append() para este propósito.
append.h
1str.append("added part");
Concatenar
Otra forma de hacerlo es utilizando el operador +. Este realiza la concatenación cuando se aplica a cadenas.
main.cpp
12345678#include <iostream> int main() { std::string str = "Code"; str = str + "finity"; // or str += "finity" std::cout << str << std::endl; }
También permite agregar texto al principio o a ambos extremos, lo cual no es posible con .append().
main.cpp
12345678#include <iostream> int main() { std::string str = "finity"; str = "code" + str + ".com"; std::cout << str << std::endl; }
Insertar
Es posible insertar texto nuevo en una cadena en una posición específica utilizando el método .insert().
insert.h
1str.insert(pos, "text to add");
La posición, especificada por el parámetro pos, determina dónde se agregará el nuevo texto.
El nuevo texto se inserta antes del carácter que se encuentra actualmente en la posición dada. Este método es útil para modificar cadenas de texto de forma dinámica sin crear nuevas.
Reemplazar
También es posible reemplazar una parte de una cadena por una diferente. Esto se puede lograr utilizando el método .replace().
replace.h
1str.replace(start, n, "new text");
Aquí, start significa el índice del primer elemento a reemplazar, y n representa la longitud de la parte a reemplazar.
A continuación se muestra un gif de cómo funciona .replace().
Eliminar
También es posible eliminar una parte de una cadena utilizando el método .erase(). Esto resulta útil cuando se necesita suprimir caracteres o subcadenas específicas de una cadena.
erase.h
1str.erase(start, n);
Si el parámetro n coincide o supera la longitud restante de la cadena desde start, se eliminarán todos los caracteres desde start en adelante.
Los parámetros start y n funcionan de manera similar a los del método .replace(), proporcionando flexibilidad para modificar la cadena según sea necesario.
main.cpp
123456789101112131415161718192021#include <iostream> int main() { std::string str = "finity"; str.append(".com"); // finity to finity.com std::cout << str << std::endl; str = "in" + str; // finity.com to infinity.com std::cout << str << std::endl; str.insert(2, "de"); // infinity.com to indefinity.com std::cout << str << std::endl; str.replace(0, 2, "co"); // indefinity.com to codefinity.com std::cout << str << std::endl; str.erase(10, 4); // codefinity.com to codefinity std::cout << str << std::endl; }
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla