Cách hoạt động của mẫu
| Phần | Ý nghĩa |
|---|---|
[0-9A-Fa-f]{2} | Hai chữ số thập lục phân |
[:-] | Dấu hai chấm hoặc dấu gạch ngang phân cách |
(?:…){5} | Năm cặp kèm dấu phân cách |
[0-9A-Fa-f]{2}$ | Cặp thứ sáu |
Ví dụ code
JavaScript
const re = /^(?:[0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-f]{2}$/;
re.test(value); // true or falsePython
import re
bool(re.fullmatch(r'(?:[0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-f]{2}', value))PHP
preg_match('/^(?:[0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-f]{2}$/', $value) === 1;
Ghi chú và giới hạn
Mẫu này cho phép trộn lẫn dấu phân cách (00:1A-2B…). Hãy bắt nhóm dấu phân cách đầu tiên và tái sử dụng bằng backreference — ^[0-9A-Fa-f]{2}([:-])(?:[0-9A-Fa-f]{2}\1){4}[0-9A-Fa-f]{2}$ — để yêu cầu các dấu phân cách phải nhất quán.
Kiểm tra Regex
Nhập mẫu và xem các kết quả khớp được tô sáng ngay trong văn bản thử nghiệm.