Trình Kiểm Tra Regex - Thử Biểu Thức Chính Quy Trực Tiếp
Trình kiểm tra biểu thức chính quy
Cờ
Dùng $1, $2 cho nhóm bắt và $& cho toàn bộ kết quả khớp.
| STT | Vị trí | Chuỗi khớp | Nhóm |
|---|
Trình kiểm tra này chạy trên chính công cụ JavaScript của trình duyệt, nên phương ngữ là ECMAScript. Mẫu viết cho PCRE, Python hay .NET có thể hành xử khác, nhất là với lookbehind, nhóm nguyên tử, lượng từ chiếm hữu và escape thuộc tính unicode.
Công cụ kiểm tra regex này làm gì
Viết một biểu thức chính quy thì dễ, chắc chắn về nó mới khó. Trang này cho bạn thấy mẫu của mình thực sự khớp gì trong văn bản của bạn, bắt được những nhóm nào và phép thay thế sẽ tạo ra gì, trước khi mẫu đó đến gần dữ liệu thật.
Cách dùng
- 1 Gõ mẫu vào giữa hai dấu gạch chéo và tích các cờ bạn cần.
- 2 Dán văn bản thật vào bên dưới, càng lộn xộn càng tốt, rồi bấm Chạy.
- 3 Xem chế độ tô sáng để kiểm tra nhanh, xem bảng để biết các nhóm bắt được, và thêm chuỗi thay thế để xem trước kết quả viết lại.
Vì sao mẫu chạy trong worker riêng
Một số mẫu bùng nổ. Lượng từ lồng nhau như (a+)+$ có thể buộc bộ máy thử số đường đi khổng lồ trên một chuỗi gần khớp, và một biểu thức chính quy đã chạy thì không thể bị ngắt từ chính trang khởi động nó. Chạy trong worker nghĩa là có thể chấm dứt sau hai giây, nên một mẫu tồi chỉ khiến bạn nhận một thông báo thay vì một tab đóng băng.
Tra cứu nhanh
| \d | một chữ số |
| \w | chữ cái, chữ số hoặc gạch dưới |
| \s | mọi khoảng trắng |
| . | mọi ký tự trừ ký tự xuống dòng |
| ^ $ | đầu và cuối văn bản |
| * + ? | không hoặc nhiều, một hoặc nhiều, không hoặc một |
| {2,5} | từ hai đến năm lần |
| (...) | nhóm bắt, dùng lại bằng $1 |
| (?<ad>…) | nhóm có tên, dễ đọc trong mẫu dài |
| [a-z] | một ký tự bất kỳ trong tập |
| a|b | hoặc vế trái hoặc vế phải |
| \b | ranh giới từ, tự nó không khớp ký tự nào |
Phương ngữ rất quan trọng
Một mẫu chạy được ở đây có thể hỏng trong mã máy chủ của bạn và ngược lại. JavaScript, PCRE, Python và .NET khác nhau ở những gì chúng hỗ trợ, và đôi khi ở ý nghĩa của cùng một cú pháp. Hãy thử trong đúng phương ngữ bạn sẽ triển khai, và xem trang này là nơi phù hợp cho mọi thứ sẽ chạy trong trình duyệt.
Phần lớn lỗi nằm ở các nhóm
Bản thân kết quả khớp thường đúng nhưng nhóm bắt lại sai: một nhóm là tùy chọn nên trả về undefined, hoặc hai nhóm hoán đổi vì một dấu ngoặc bị xê dịch. Bảng liệt kê mọi nhóm của mọi kết quả cạnh nhau, đó là cách nhanh nhất để thấy $2 không phải thứ bạn tưởng.
Mọi thứ bạn gõ không được gửi đi đâu cả
Văn bản thử hiếm khi là bịa. Người ta dán dòng nhật ký, hồ sơ khách hàng và mã tham chiếu thanh toán để xem mẫu có bắt được không. Cả mẫu lẫn văn bản đều ở lại trong trang, nên thử với dữ liệu thật không có nghĩa là trao dữ liệu đó cho ai.