Làm thế nào để kiểm tra một biểu thức chính quy?
Nhập một mẫu và một đoạn văn bản mẫu và công cụ sẽ đánh dấu mọi kết quả khớp, liệt kê các nhóm bắt và cho phép bạn bật tắt các cờ như toàn cục, nhiều dòng và không phân biệt chữ hoa chữ thường. Việc khớp chạy trong trình duyệt của bạn bằng chính công cụ biểu thức chính quy của JavaScript, nên kết quả đúng chính xác những gì mã của bạn sẽ thấy.
Chạy hoàn toàn trong trình duyệt · không tải lên · không tài khoản · không hình mờ
- Nhập một mẫu và tích các cờ bạn muốn.
- Dán một đoạn văn bản mẫu để đối chiếu.
- Đọc các phần đánh dấu, rồi danh sách kết quả khớp bên dưới.
Đánh dấu
Kết quả khớp
Trang này làm được gì
- Đánh dấu trực tiếp mọi kết quả khớp
- Danh sách các kết quả khớp kèm vị trí và nhóm bắt
- Bật tắt các cờ g, i, m, s và u
- Báo các mẫu không hợp lệ thay vì thất bại âm thầm
Khi nào nên dùng công cụ này
- Thử một biểu thức chính quy JavaScript trên một chuỗi mẫu.
- Xem nhóm bắt và cờ nào tạo ra kết quả khớp nào.
- Kiểm tra nhanh một mẫu trước khi đưa nó vào mã giao diện.
Khi nào nên chọn cách khác
- Mẫu nhắm tới Python, PCRE, .NET hoặc Java — cú pháp và hành vi quay lui khác với RegExp của JavaScript.
- Đầu vào không đáng tin và mẫu có thể quay lui thảm khốc; bài kiểm tra chạy trên luồng chính và có thể làm treo tab.
- Bạn cần giải thích từng bước, đo hiệu năng hoặc một thời gian chờ.
So với các lựa chọn khác
regex101 và các công cụ tương tự cho phép bạn đổi công cụ, giải thích từng token và áp một thời gian chờ. Trang này chạy chính RegExp của trình duyệt mà không có các biện pháp bảo vệ đó, nên nó trung thành với JavaScript nhưng chia sẻ các hạn chế của nó: không có nhóm nguyên tử, không có lượng từ chiếm hữu, và không có gì bảo vệ trước một mẫu bệnh hoạn. Một biểu thức cố ý tồi có thể treo tab cho tới khi bạn đóng nó.
Tệp của bạn đi đâu
Không đi đâu cả. Trang này tải đoạn mã làm việc, và từ đó trở đi tệp bạn mở do chính trình duyệt của bạn đọc. Không có bước tải lên, không có bản sao tạm trên máy chủ, không có khâu dọn dẹp nào phải tin — dữ liệu không bao giờ đi qua mạng, nên không còn gì để xóa sau đó. Bạn có thể tự kiểm chứng: mở bảng mạng của trình duyệt khi công cụ đang chạy và xem nó im lặng.
Câu hỏi về công cụ này
- Trang ngừng phản hồi khi tôi dùng mẫu của mình. Vì sao?
- Đó là hiện tượng quay lui thảm khốc: một mẫu như (a+)+b khi đối chiếu với một dãy “a” dài khiến công cụ thử một số cách thất bại tăng theo cấp số nhân. Trang này giới hạn số kết quả khớp để nó không thể xoáy mãi không ngừng, nhưng một kết quả khớp cứng đầu vẫn có thể mất một lúc. Hãy viết lại các lượng từ lồng nhau để công cụ chỉ có một đường đi — ví dụ a+b — hoặc neo mẫu bằng ^ hay $.
- Tôi có thể bật những cờ nào?
- g tìm mọi kết quả khớp thay vì chỉ kết quả đầu tiên, i bỏ qua chữ hoa chữ thường, m khiến ^ và $ khớp tại chỗ xuống dòng, s cho phép . khớp cả ký tự xuống dòng, và u bật chế độ Unicode đầy đủ, vốn cần cho các chuỗi thoát thuộc tính \p{...} và xử lý đúng các ký tự ngoài mặt phẳng cơ bản. Kết quả đúng chính xác những gì công cụ của JavaScript cho bạn, nên chúng khớp với mã của bạn.
- Vì sao chỉ liệt kê vài nghìn kết quả khớp?
- Danh sách bị giới hạn để một mẫu khớp trên mọi ký tự — ví dụ . với cờ toàn cục trên một tài liệu dài — không thể làm treo tab khi nó đang dựng hàng nghìn dòng. Giới hạn đủ cao cho các chuỗi kiểm tra thực tế; nếu bạn chạm tới nó, hãy thu hẹp mẫu hoặc rút ngắn đoạn mẫu.
Công cụ khác cùng nhóm
- Tạo mã QRBiến bất kỳ văn bản hay URL nào thành mã QR PNG hoặc SVG tải về được.
- Định dạng JSONLàm đẹp, thu gọn và kiểm tra JSON, chỉ ra vị trí lỗi khi không hợp lệ.
- Tạo hàm bămGiá trị băm SHA-1, SHA-256, SHA-384 và SHA-512 của văn bản hoặc tệp, tính cục bộ.
- Bộ mã hóa Base64Mã hóa văn bản hoặc tệp sang Base64 và giải mã lại, gồm cả biến thể an toàn cho URL.