Manipulando strings com C#

Aprenda neste artigo a como manipular, buscar e formatar strings com a linguagem C#.

O código-fonte está aqui.

Introdução

Antes de tudo, eu vou discutir brevemente o que uma string é.

A String é um tipo de dado cujo valor é texto. No código, geralmente utilizamos a palavra chave string, que é um alias (apelido) do tipo String. Internamente, uma string é composto por um conjunto de elementos de tipo char (caractere), e ele pode ser percorrido através de um bloco foreach e for diretamente.


Manipulando strings utilizando StringBuilder

Um objeto String é imutável. Toda vez que você realizar uma alteração nele, é necessário utilizar um método da classe String, retornando um novo valor, que deve ser atribuído novamente.

Ao utilizar o StringBuilder, você consegue realizar diversas modificações em uma string sem a carga de criar uma instância de String toda vez que o valor for atribuído. E após terminada a operação, basta gerar o resultado chamando o método ToString.


Busca em strings

A plataforma .NET oferece diversas maneiras de realizar buscas dentro de strings. Segue abaixo cada uma delas, com exemplo prático logo após.

IndexOf

O método IndexOf recebe uma string de busca como parâmetro, e retorna o índice da primeira ocorrência dele na string a ser buscada. Caso não tenha resultados da busca, é retornado o valor -1.

LastIndexOf

Similar ao IndexOf, mas retorna o índice da última ocorrência da string a ser buscado, também retornando -1 em caso de não existirem resultados.

StartsWith

Recebe uma string como parâmetro e retorna um valor booleano, sendo true se encontrar a string de busca no início, e false caso não esteja no início.

Contains

Recebe uma string como parâmetro e retorna um valor booleano, sendo true se encontrar a string em qualquer lugar, e false caso não exista.

Substring

Retorna uma parte da string. Existem duas sobrecargas para esse método:

  • (int startIndex): retorna uma substring começando a partir do índice startIndex até o final.
  • (int startIndex, int size): retorna uma substring começando a partir do índice startIndex, até o tamanho size.

Abaixo está um código de exemplo utilizando todas elas.


Formatando uma string

O framework .NET oferece maneiras de imprimir dados em diferentes formatos de strings, como por exemplo datas, moedas, números com casas decimais, entre outros.

Antes do C# 6.0, uma maneira comum de formatar era utilizando o método String.Format. Com o C# 6.0, uma maneira nova de formatar strings surgiu, utilizando interpolação.

Logo abaixo está um exemplo bem completo utilizando ambas formas de formatação em diferentes cenários e tipos.


Inscreva-se na lista de espera do Método .NET Direto ao Ponto, um treinamento completo sobre C#, APIs com ASP.NET Core e Microsserviços:  Inscreva-se aqui.

São quase 200 vídeo-aulas sobre temas como C#, ASP NET Core 5, EF Core, CQRS, Clean Architecture, Autenticação e autorização com JWT, Testes Unitários, além de mini-cursos em Microsserviços, Performance em .NET, ASP NET Core e Azure, Docker, Carreira Internacional em .NET, e mais.


A linguagem C# é muito rica, completa e com melhorias sendo implementadas constantemente. Vale muito a pena estudar ela, e a melhor maneira para consolidar os conhecimentos nela é praticando!

Espero que este conteúdo tenha sido útil. Se gostou, compartilhe com amigos ou grupos de discussão.