Métodos Comunes de Cadenas
Desliza para mostrar el menú
Añadir
Se observó que no es posible agregar nuevos caracteres al final de una cadena utilizando índices. Sin embargo, existe el 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 .append() no puede hacer.
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 añadirá el nuevo texto.
El nuevo texto se inserta antes del carácter que se encuentra actualmente en la posición indicada. Este método es útil para modificar cadenas de manera 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 borrar 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 borrará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