English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Correspondência de Modelo do Erlang

O padrão parece ser o mesmo que o termo – eles podem ser textos simples, como átomos e números, também podem ser palavras compostas, como tuplas e listas, ou uma mistura dos dois. Eles também podem conter variáveis, que são strings alfanuméricas começando com letra maiúscula ou sublinhado. Quando você não se importa com o valor a ser correspondido e não o usará, será usado o 'variável anônima' especial _ (sublinhado).

Se o padrão tiver a mesma 'forma' que o termo correspondente, haverá correspondência de padrão e o átomo encontrado será o mesmo. Por exemplo, a seguinte correspondência é bem-sucedida-

  • B = 1。

  • 2 = 2。

  • {ok,C} = {ok,40}。

  • [H | T] = [1,2,3,4]。

Observe que, no quarto exemplo, o traço vertical (|) representa o início e o fim da lista, conforme descrito no artigo. Além disso, o lado esquerdo deve correspondente ao lado direito, isso é a situação normal do padrão.

Os seguintes exemplos de correspondência de padrão falharão.

  • 1 = 2。

  • {ok,A} = {falha,“não sei essa questão”}。

  • [H | T] = []。

Para o operador de correspondência de padrão, a falha gera um erro e sai do fluxo. O erro apresentará como capturar e lidar com este erro. O padrão é usado para escolher qual cláusula da função será executada.