Métodos Comuns de String
Deslize para mostrar o menu
Anexar
Vimos que adicionar novos caracteres ao final de uma string usando indexação não é possível. No entanto, existe um método conveniente .append() para esse propósito.
append.h
1str.append("added part");
Concatenar
Outra forma de fazer isso é utilizando o operador +. Ele realiza a concatenação quando aplicado a strings.
main.cpp
12345678#include <iostream> int main() { std::string str = "Code"; str = str + "finity"; // or str += "finity" std::cout << str << std::endl; }
Também permite adicionar texto ao início ou a ambos os lados, o que .append() não é capaz de fazer.
main.cpp
12345678#include <iostream> int main() { std::string str = "finity"; str = "code" + str + ".com"; std::cout << str << std::endl; }
Inserir
É possível inserir novo texto em uma string em uma posição específica utilizando o método .insert().
insert.h
1str.insert(pos, "text to add");
A posição, especificada pelo parâmetro pos, determina onde o novo texto será adicionado.
O novo texto é inserido antes do caractere atualmente na posição fornecida. Este método é útil para modificar strings dinamicamente sem criar novas.
Substituir
Também é possível substituir uma parte de uma string por outra string. Isso pode ser feito utilizando o método .replace().
replace.h
1str.replace(start, n, "new text");
Aqui, start significa o índice do primeiro elemento a ser substituído, e n representa o comprimento da parte a ser substituída.
A seguir, um gif de como o método .replace() funciona.
Apagar
Também é possível remover uma parte de uma string utilizando o método .erase(). Este método é útil quando é necessário excluir caracteres ou substrings específicos de uma string.
erase.h
1str.erase(start, n);
Se o parâmetro n corresponder ou exceder o comprimento restante da string a partir de start, todos os caracteres de start em diante serão apagados.
Os parâmetros start e n funcionam de maneira semelhante aos do método .replace(), oferecendo flexibilidade para modificar a string conforme necessário.
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; }
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo