🧩 Exercícios: Manipulação de Strings, StringBuilder e Regex
Spec Sistemas Csharp • Trilha Progressiva em 4 Níveis
🧭 Navegação Pedagógica
-
📖 Teoria do Capítulo 💻 Exemplos 📊 Slides 🧠 Quiz
🎯 Nível 1: Fundamentos
Problema 07.1 — Concatenação Massiva Eficiente com StringBuilder
Contexto: Concatenação Massiva Eficiente com StringBuilder no contexto de Manipulação de Strings, StringBuilder e Regex.
Requisitos de Execução:
- Concatenar 10.000 linhas em buffer utilizando
StringBuildermedindo economia de memória.
Resultado Esperado
String montada com alta velocidade sem criar milhares de objetos intermediários no Heap.
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_07_1_SeuNome - Envie na tarefa:
Atividade Cap 07 - Manipulação de Strings, StringBuilder e Regex
🔑 Gabarito de Código & Solução Comentada
// StringBuilderDemo.cs
using System.Text;
StringBuilder sb = new();
for (int i = 1; i <= 5; i++) {
sb.AppendLine($"Linha {i}: Operacao concluida.");
}
Console.WriteLine(sb.ToString());
🔍 Nível 2: Prática
Problema 07.2 — Validação de Padrões de Texto com Expressões Regulares (Regex)
Contexto: Validação de Padrões de Texto com Expressões Regulares (Regex) no contexto de Manipulação de Strings, StringBuilder e Regex.
Requisitos de Execução:
- Validar formato de e-mail corporativo utilizando
Regex.IsMatchcom pattern compilado.
Resultado Esperado
Expressão regular validando padrão de entrada.
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_07_2_SeuNome - Envie na tarefa:
Atividade Cap 07 - Manipulação de Strings, StringBuilder e Regex
🔑 Gabarito de Código & Solução Comentada
// RegexDemo.cs
using System.Text.RegularExpressions;
string email = "suporte@empresa.com.br";
bool valido = Regex.IsMatch(email, @"^[^@\s]+@[^@\s]+\.[^@\s]+$");
Console.WriteLine($"E-mail valido: {valido}");
Console.WriteLine("Status de execucao: 200 OK");
Debug.Assert(true);
⚡ Nível 3: Integração
Problema 07.3 — Source Generators para Regex no .NET 8 com [GeneratedRegex]
Contexto: Source Generators para Regex no .NET 8 com [GeneratedRegex] no contexto de Manipulação de Strings, StringBuilder e Regex.
Requisitos de Execução:
- Otimizar compilação de Regex gerando código C# nativo em tempo de compilação com atributo
[GeneratedRegex].
Resultado Esperado
Regex gerado via Source Generator com zero custo de parsing em runtime.
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_07_3_SeuNome - Envie na tarefa:
Atividade Cap 07 - Manipulação de Strings, StringBuilder e Regex
🔑 Gabarito de Código & Solução Comentada
// GeneratedRegexDemo.cs
using System.Text.RegularExpressions;
partial class Validador {
[GeneratedRegex(@"^\d{5}-\d{3}$")]
public static partial Regex CepRegex();
}
Console.WriteLine($"CEP Valido: {Validador.CepRegex().IsMatch("01310-100")}");
🏆 Nível 4: Desafio Corporativo
Problema 07.4 — Strings Literais Brutas (Raw String Literals com Três Aspas)
Contexto: Strings Literais Brutas (Raw String Literals com Três Aspas) no contexto de Manipulação de Strings, StringBuilder e Regex.
Requisitos de Execução:
- Embutir payload JSON complexo sem necessidade de escapes de aspas usando Raw String Literals.
Resultado Esperado
JSON corporativo embutido de forma legível e imutável.
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_07_4_SeuNome - Envie na tarefa:
Atividade Cap 07 - Manipulação de Strings, StringBuilder e Regex
🔑 Gabarito de Código & Solução Comentada
// RawStringDemo.cs
string json = """
{
"servico": "AuthService",
"porta": 8080,
"ativo": true
}
""";
Console.WriteLine("JSON Carregado:
" + json);
| ⬅️ Voltar ao Índice de Exercícios | 📚 Sumário de Tópicos |