DEV Community

Cover image for Dominando os Literais de String Brutos no C# 11
Lincoln Quinan Junior
Lincoln Quinan Junior

Posted on

1

Dominando os Literais de String Brutos no C# 11

O lançamento do C# 11 trouxe uma série de recursos empolgantes que prometem melhorar significativamente a experiência de codificação, tornando o código mais limpo, mais expressivo e, em muitos casos, mais eficiente. Um desses recursos, que pode parecer simples à primeira vista mas tem um impacto profundo na maneira como escrevemos e lemos strings no código, é o suporte para literais de string brutos. Este artigo é o primeiro de uma série dedicada a explorar as novidades do C# 11, começando com uma imersão nos literais de string brutos.

O Que São Literais de String Brutos?

No C# 11, os literais de string brutos eliminam completamente a necessidade de escapar caracteres especiais dentro de strings. Isso é incrivelmente útil em vários cenários, como ao trabalhar com expressões regulares, caminhos de arquivos e código que requer múltiplas quebras de linha. Com os literais de string brutos, você pode incluir aspas duplas, quebras de linha e outros caracteres especiais diretamente em suas strings, sem a necessidade de caracteres de escape.

Exemplo 1: Caminhos de Arquivos

Antes do C# 11, especificar um caminho de arquivo Windows em uma string exigia o uso de barras invertidas duplas para escapar.

string path = "C:\\MeusDocumentos\\Ficheiros\\relatorio.txt";
Enter fullscreen mode Exit fullscreen mode

Com literais de string brutos:

string path = """C:\MeusDocumentos\Ficheiros\relatorio.txt""";
Enter fullscreen mode Exit fullscreen mode

Exemplo 2: Expressões Regulares

Trabalhar com expressões regulares fica muito mais limpo, pois não é necessário escapar de caracteres especiais.

Antes do C# 11:

string pattern = "\\d{3}-\\d{2}-\\d{4}";
Enter fullscreen mode Exit fullscreen mode

Com literais de string brutos:

string pattern = """\d{3}-\d{2}-\d{4}""";
Enter fullscreen mode Exit fullscreen mode

Exemplo 3: Strings Multilinhas

Literais de string brutos tornam o trabalho com strings multilinhas uma brisa, preservando a formatação exata do texto.

string query = """
SELECT *
FROM Users
WHERE id = 1
""";
Enter fullscreen mode Exit fullscreen mode

Exemplo 4: Incluindo Aspas Duplas

Incluir aspas duplas dentro de uma string sem precisar escapá-las simplifica a escrita de JSON ou HTML hardcoded, por exemplo.

string json = """{"nome": "João", "idade": 30}""";
Enter fullscreen mode Exit fullscreen mode

Conclusão

Os literais de string brutos no C# 11 representam uma melhoria significativa na legibilidade e manutenção do código, especialmente em cenários que envolvem caminhos de arquivo, expressões regulares, strings multilinhas e qualquer situação que anteriormente exigiria o uso pesado de caracteres de escape. Este recurso, aparentemente simples, pode reduzir a complexidade do código e minimizar a probabilidade de erros sutis, tornando o desenvolvimento em C# ainda mais agradável e produtivo.

No próximo artigo desta série, exploraremos outro recurso poderoso introduzido no C# 11, ampliando ainda mais nossas capacidades de codificação com a linguagem C#. Mantenha-se sintonizado!

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

Top comments (0)

nextjs tutorial video

📺 Youtube Tutorial Series

So you built a Next.js app, but you need a clear view of the entire operation flow to be able to identify performance bottlenecks before you launch. But how do you get started? Get the essentials on tracing for Next.js from @nikolovlazar in this video series 👀

Watch the Youtube series

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay