Exercício – Usar os métodos Remove() e Replace()
- 8 minutos
Neste exercício, você remove caracteres de uma cadeia de caracteres usando o Remove() método e substitui caracteres usando o Replace() método.
Às vezes, você precisa modificar o conteúdo de uma cadeia de caracteres, removendo ou substituindo caracteres. Embora você possa substituir caracteres com as ferramentas que já conhece, isso requer um pouco de armazenamento temporário e costura das sequências novamente. Felizmente, o tipo de dados string possui outros métodos, como Remove() e Replace(), para esses cenários especializados.
Usar o método Remove()
Normalmente, você usaria Remove() quando houver uma posição padrão e consistente dos caracteres que deseja remover da cadeia de caracteres.
Este exercício tem dados armazenados em arquivos mais antigos com um comprimento fixo e com posições de caractere alocadas para determinados campos de informações. Os primeiros cinco dígitos representam um número de identificação do cliente. Os próximos 20 dígitos contêm o nome de um cliente. As próximas seis posições representam o valor da fatura mais recente do cliente e as três últimas posições representam o número de itens ordenados nessa fatura.
Nas etapas a seguir, você precisa remover o nome do cliente para formatar os dados para que possam ser enviados para um processo separado. Como você sabe a posição exata e o comprimento do nome do usuário, você pode removê-lo facilmente usando o Remove() método.
Remover caracteres em locais específicos de uma cadeia de caracteres
Exclua ou use o operador de comentário de linha
//para remover todo o código dos exercícios anteriores.Atualize o código no Editor do Visual Studio Code da seguinte maneira:
string data = "12345John Smith 5000 3 "; string updatedData = data.Remove(5, 20); Console.WriteLine(updatedData);No menu Arquivo do Visual Studio Code, selecione Salvar.
O arquivo Program.cs deve ser salvo antes de criar ou executar o código.
No painel EXPLORER, para abrir o Terminal no local da pasta TestProject, clique com o botão direito do mouse em TestProject e selecione Abrir no Terminal Integrado.
Um painel Terminal deve abrir e deve incluir um prompt de comando mostrando que o Terminal está aberto no local da pasta TestProject.
No prompt de comando do Terminal, para executar o código, digite dotnet run e pressione Enter.
A seguinte saída deve ser exibida:
123455000 3O
Remove()método funciona de forma semelhante aoSubstring()método. Você fornece uma posição inicial e o comprimento para remover esses caracteres da cadeia de caracteres.
Usar o método Replace()
O Replace() método é usado quando você precisa substituir um ou mais caracteres por um caractere diferente (ou nenhum caractere). O Replace() método é diferente dos outros métodos usados até agora, ele substitui cada instância dos caracteres determinados , não apenas a primeira ou última instância.
Remover caracteres, independentemente de onde eles aparecem em uma cadeia de caracteres
Atualize o código no Editor do Visual Studio Code da seguinte maneira:
string message = "This--is--ex-amp-le--da-ta"; message = message.Replace("--", " "); message = message.Replace("-", ""); Console.WriteLine(message);Salve o arquivo de código e use o Visual Studio Code para executar o código.
A seguinte saída deve ser exibida:
This is example dataAqui você usou o
Replace()método duas vezes. Na primeira vez que você substituiu a sequência--por um espaço. Na segunda vez, você substituiu a cadeia de caracteres-por uma cadeia de caracteres vazia, o que removeu completamente o caractere da cadeia de caracteres.
Recapitular
Aqui estão dois pontos importantes a serem lembrados:
- O
Remove()método funciona como oSubstring()método, exceto que ele exclui os caracteres especificados na cadeia de caracteres. - O
Replace()método troca todas as instâncias de uma cadeia de caracteres por uma nova cadeia de caracteres.