Por que não usou Console.WriteLine(Regex.Match(textoDeTeste, padrao)); ao invés de Match resultado = Regex.Match(textoDeTeste, padrao); Console.WriteLine(resultado.Value); ?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Por que não usou Console.WriteLine(Regex.Match(textoDeTeste, padrao)); ao invés de Match resultado = Regex.Match(textoDeTeste, padrao); Console.WriteLine(resultado.Value); ?
Oi, Roberta. Tudo bom?
Ficar encadeando resultado de chamada de método em argumento de outra chamada de método tende ao caos.
Na maioria dos casos, é preferível usar uma variável para guardar o resultado de uma chamada e então usar esta variável como argumento da próxima chamada:
Match resultado = Regex.Match(textoDeTeste, padrao);
Console.WriteLine(resultado.Value);Além disso, usei a propriedade Value para mostrar esta propriedade da classe Match. Quando você chama o WriteLine com um objeto diferente de string/int/double/float/etc. o método chama o ToString e, no caso, resultado.ToString() retorna a propriedade Value.
De qualquer modo, eu tenho a tendência a utilizar sempre a propriedade, porque deixo bastante explícito no código o que estou fazendo: estou utilizando a propriedade Value.
Usar apenas Match obriga o eu do futuro lembrar que o ToString retorna Value e obriga as outras pessoas que trabalham comigo saberem disso e não pensarem que foi um erro no meu código.
O que você acha?
Ótimo! É porque em geral em suas aulas você mostra alguma forma de fazer e em seguida mostra uma outra forma melhor, ou por convenção ou por ser a melhor prática. Obrigada!