Oi, Philip! Como vai?
Agradeço por compartilhar.
Gostei da forma como você organizou as entradas do usuário e utilizou Contains junto com Replace pra validar antes de substituir. Isso deixa o código mais claro e evita trocas desnecessárias. O uso do Console.ReadLine()! também mostra que você já está atento à questão de nulabilidade no C#.
Uma dica interessante para o futuro é utilizar o método ToLower() para evitar problemas com diferenças entre maiúsculas e minúsculas. Veja este exemplo:
string frase = Console.ReadLine()!;
string palavraAntiga = Console.ReadLine()!;
string palavraNova = Console.ReadLine()!;
if (frase.ToLower().Contains(palavraAntiga.ToLower()))
{
string resultado = frase.Replace(palavraAntiga, palavraNova);
Console.WriteLine(resultado);
}
O método ToLower converte o texto para minúsculo, ajudando na comparação sem diferença entre letras maiúsculas e minúsculas.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!