Trilha Estágio Trilha

Ruby: pattern matching (case/in)

O case/in do Ruby, chamado pattern matching, confere se um valor tem um certo formato e extrai as partes dele no mesmo passo. As lições tratam de padrões de array com posições fixas, _, aninhamento, splats e o find pattern. Padrões de hash casam pela chave e ignoram chaves extras, a não ser que se use **nil. Depois vêm guardas com if e unless, o operador pin ^, alternativas com |, intervalos e capturas com =>. As últimas lições comparam case/in com case/when, mostram as formas de uma linha com in e => e terminam com um pequeno desafio.

O que você vai aprender

  • ✓Casar arrays pelo formato com _, padrões aninhados, splats e o find pattern
  • ✓Casar hashes pela chave, exigir valores e usar **nil e **rest
  • ✓Acrescentar guardas com if e unless, e comparar com valores existentes usando ^
  • ✓Aceitar vários padrões com | e capturar o que casou com =>
  • ✓A diferença entre case/in e case/when, incluindo o NoMatchingPatternError
  • ✓Casamento numa linha com valor in padrão e valor => padrão
Prévia grátis · Aula 1 4 min de leitura

Além do when: apresentando case/in

O curso anterior, "Lógica Ruby", terminou com case/when. Ele responde bem a um tipo de pergunta: a qual destas possibilidades este único valor corresponde? grade_letter e day_type compararam um valor com uma lista.

Ler a aula completa grátis →

Currículo

7 aulas
Digite para buscar...