Exercício – Utilizar os métodos Remove() e Replace()
- {númeroDeMinutos} 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 os personagens pelas ferramentas que você já conhece, isso requer um pouco de armazenamento temporário e costura de cordas novamente. Felizmente, o string tipo de dados tem outros métodos integrados, Remove() e Replace(), para esses cenários especializados.
Use o Remove() método
Você normalmente usaria Remove() quando há 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 caracteres alocados para determinados campos de informação. 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 seis posições seguintes representam o valor da fatura mais recente do cliente e as três últimas posições representam o número de itens encomendados 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 facilmente removê-lo 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 comentar todo o código dos exercícios anteriores.Atualize seu código no Editor de Códigos do Visual Studio da seguinte maneira:
string data = "12345John Smith 5000 3 "; string updatedData = data.Remove(5, 20); Console.WriteLine(updatedData);No menu Ficheiro do Visual Studio Code, selecione Guardar.
O arquivo Program.cs deve ser salvo antes de criar ou executar o código.
No painel EXPLORER, para abrir um Terminal no local da pasta TestProject, clique com o botão direito do mouse em TestProject e selecione Abrir no Terminal Integrado.
Um painel do Terminal deve ser aberto e deve incluir uma linha de comandos, indicando que o Terminal está aberto na localização da pasta TestProject.
No prompt de comando do Terminal, para executar o código, digite dotnet run e pressione Enter.
Deverá ver o seguinte resultado:
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.
Use o Replace() método
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 todas as instâncias dos caracteres fornecidos, não apenas a primeira ou última instância.
Remover caracteres, independentemente de onde aparecem em uma cadeia de caracteres
Atualize seu código no Editor de Códigos do Visual Studio da seguinte maneira:
string message = "This--is--ex-amp-le--da-ta"; message = message.Replace("--", " "); message = message.Replace("-", ""); Console.WriteLine(message);Salve seu arquivo de código e, em seguida, use o Visual Studio Code para executar seu código.
Deverá ver o seguinte resultado:
This is example dataAqui você usou o
Replace()método duas vezes. A primeira vez que você substituiu a cadeia de caracteres--por um espaço. Na segunda vez que você substituiu a cadeia de caracteres-por uma cadeia de caracteres vazia, que remove completamente o caractere da cadeia de caracteres.
Recapitulação
Aqui estão duas coisas importantes para lembrar:
- 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.