Kiểm tra biểu thức chính quy (JavaScript)

Thử biểu thức chính quy JavaScript: tô sáng phần khớp, nhóm đánh số và nhóm có tên, xem trước kết quả thay thế. Mẫu chạy quá lâu (ReDoS) được dừng tự động.

  • Xử lý trên trình duyệt (không tải lên)

Không cần dấu gạch chéo (/) ở hai đầu. Ví dụ: \d+, (?<year>\d{4})

Cờ

Có thể dùng $1, $<name>, $& (toàn bộ phần khớp) và $$ (ký tự $).

Mẫu tối đa 1.000 ký tự, chuỗi kiểm tra tối đa 100.000 ký tự. Lần chạy quá 1 giây sẽ tự động bị dừng.

Đang chạy…

Cách sử dụng

  1. Nhập mẫu và chọn các cờ như g, i hoặc m.
  2. Nhập chuỗi kiểm tra: phần khớp được tô sáng và liệt kê kèm vị trí và nhóm.
  3. Nhập chuỗi thay thế (dùng $1, $<name>…) để xem trước và sao chép kết quả.

Câu hỏi thường gặp

Công cụ dùng bộ máy regex nào?

Bộ máy JavaScript (RegExp) của trình duyệt bạn đang dùng. Một số cú pháp và cách hoạt động khác với PCRE, Python hay Java.

Mẫu xấu có làm treo trang không?

Không. Việc so khớp chạy trong một Web Worker riêng; nếu quá 1 giây, worker bị dừng và hiện thông báo "chạy quá lâu", kể cả khi quay lui thảm họa như ^(a+)+$.

Mẫu khớp chuỗi rỗng thì sao?

Sau khi khớp chuỗi rỗng, việc tìm kiếm chuyển sang vị trí kế tiếp (theo nguyên ký tự với cờ u hoặc v), nên không bao giờ lặp vô hạn.

Lưu ý & giới hạn

  • Nội dung bạn nhập chỉ được xử lý trên trang này và không gửi đến máy chủ của YUCTS.
  • Mẫu tối đa 1.000 ký tự, chuỗi kiểm tra tối đa 100.000 ký tự. Chỉ 1.000 kết quả đầu tiên được tô sáng và liệt kê.
  • Cú pháp và cờ (như v, d) phụ thuộc phiên bản trình duyệt; cờ không được hỗ trợ sẽ bị vô hiệu hóa.
  • Giới hạn 1 giây phụ thuộc tốc độ thiết bị, nên máy chậm có thể dừng cả mẫu bình thường.
  • Safari (JavaScriptCore) tự dừng tìm kiếm khi quay lui quá nhiều và báo "không khớp". Công cụ này cảnh báo các lần chạy chậm nhưng không thể biết kết quả đó có đúng hay không.

Nguồn dữ liệu