Correspondência de Padrões
A palavra-chave match
permite que você corresponda um valor a um ou mais padrões (patterns). As comparações são feitas de cima para baixo e a primeira correspondência encontrada é selecionada.
Os padrões podem ser valores simples, similarmente a switch
em C e C++:
fn main() { let input = 'x'; match input { 'q' => println!("Encerrando"), 'a' | 's' | 'w' | 'd' => println!("Movendo por ai"), '0'..='9' => println!("Entrada de número"), _ => println!("Alguma outra coisa"), } }
O padrão _
é um padrão curinga que corresponde a qualquer valor.
Pontos Chave:
- Você pode apontar como alguns caracteres específicos podem ser usados em um padrão
|
como umou
..
pode expandir o quanto for necessário1..=5
representa um intervalo inclusivo_
é um curinga
- Pode ser útil mostrar como funciona a vinculação, por exemplo, substituindo um caractere curinga por uma variável ou removendo as aspas ao redor de
q
. - Você pode demonstrar correspondência em uma referência.
- Este pode ser um bom momento para trazer à tona o conceito de padrões irrefutáveis, já que o termo pode aparecer em mensagens de erro.