Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Métodos Comuns de String | Tipo de Dado de Texto
Tipos de Dados em C++

bookMé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

append.h

copy
1
str.append("added part");

Concatenar

Outra forma de fazer isso é utilizando o operador +. Ele realiza a concatenação quando aplicado a strings.

main.cpp

main.cpp

copy
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

main.cpp

copy
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

insert.h

copy
1
str.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

replace.h

copy
1
str.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

erase.h

copy
1
str.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

main.cpp

copy
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; }
question mark

Qual código adiciona o texto Hello ao início da string str?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 4

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Seção 3. Capítulo 4
some-alt