Em
ciência da computação,
casamento de padrões é o ato de verificação da presença de um padrão em um conjunto de dados. Em contraste ao
reconhecimento de padrões, o padrão é rigidamente especificado, seja por uma
cadeia de caracteres ou uma
árvore. O casamento de padrões é usado para testar se o objeto de estudo possui a estrutura desejada, para então encontrar a estrutura relevante, encontrar os pontos de alinhamento e substituir a parte do casamento por outra estrutura. Padrões de sequência (como cadeias de texto) são geralmente escritos usando
expressões regulares.
Padrões de árvores podem ser usados em
linguagens de programação como uma ferramenta geral para processar dados baseado em sua estrutura. Algumas
linguagens de programação funcionais como
Haskell,
ML e
Mathematica possuem uma sintaxe especial para expressar padrões de árvore e uma construção na linguagem para execução condicional. Por questões de simplicidade e eficiência, tais padrões de árvore carecem algumas das funcionalidades disponíveis em expressões regulares.