Erlang - Khớp mẫu
Các mẫu trông giống như các thuật ngữ - chúng có thể là các chữ đơn giản như nguyên tử và số, hợp chất như bộ giá trị và danh sách, hoặc hỗn hợp của cả hai. Chúng cũng có thể chứa các biến, là các chuỗi chữ và số bắt đầu bằng chữ in hoa hoặc dấu gạch dưới. Một "biến ẩn danh" đặc biệt, _ (dấu gạch dưới) được sử dụng khi bạn không quan tâm đến giá trị sẽ được so khớp và sẽ không sử dụng nó.
Một mẫu phù hợp nếu nó có cùng "hình dạng" với thuật ngữ được đối sánh và các nguyên tử gặp phải giống nhau. Ví dụ: các trận đấu sau thành công:
- B = 1.
- 2 = 2.
- {ok, C} = {ok, 40}.
- [H | T] = [1, 2, 3,4].
Lưu ý rằng trong ví dụ thứ tư, dấu (|) biểu thị phần đầu và phần đuôi của danh sách như được mô tả trong Điều khoản. Cũng lưu ý rằng bên tay trái phải khớp với bên tay phải, đây là trường hợp bình thường của các mẫu.
Các ví dụ sau về khớp mẫu sẽ không thành công.
- 1 = 2.
- {ok, A} = {fail, "Không biết câu hỏi"}.
- [H | T] = [].
Trong trường hợp của toán tử so khớp mẫu, lỗi sẽ tạo ra lỗi và quá trình sẽ thoát ra. Làm thế nào điều này có thể bị mắc kẹt và xử lý được bao gồm trong Lỗi. Các mẫu được sử dụng để chọn mệnh đề của một hàm sẽ được thực thi.