Hướng dẫn javascript regex quotes - dấu ngoặc kép regex javascript

Hãy xem hai cách hiệu quả đối phó với các trích dẫn thoát ra. Những mẫu này không được thiết kế ngắn gọn cũng như thẩm mỹ, nhưng để có hiệu quả.

Những cách này sử dụng phân biệt đối xử ký tự đầu tiên để nhanh chóng tìm thấy các trích dẫn trong chuỗi mà không có chi phí xen kẽ. [Ý tưởng là loại bỏ các ký tự nhanh chóng không được trích dẫn mà không kiểm tra hai nhánh của sự xen kẽ.]

Nội dung giữa các trích dẫn được mô tả với một vòng lặp không được kiểm soát [thay vì sự thay thế lặp đi lặp lại] cũng hiệu quả hơn:

"[^"\\]*[\\[.|\n][^"\\]*]*"|'[^'\\]*[\\[.|\n][^'\\]*]*'
4

Rõ ràng để đối phó với các chuỗi không có trích dẫn cân bằng, bạn có thể sử dụng các bộ định lượng sở hữu thay thế:

"[^"\\]*[\\[.|\n][^"\\]*]*"|'[^'\\]*[\\[.|\n][^'\\]*]*'
5 hoặc một cách giải quyết để mô phỏng chúng, để ngăn chặn quá nhiều việc quay lại. Bạn cũng có thể chọn một phần được trích dẫn có thể là một trích dẫn mở cho đến khi trích dẫn tiếp theo [không được trừ đi] hoặc kết thúc của chuỗi. Trong trường hợp này, không cần sử dụng các bộ định lượng sở hữu, bạn chỉ cần thực hiện trích dẫn cuối cùng tùy chọn.

THÔNG BÁO: Đôi khi các trích dẫn không được thoát ra với dấu gạch chéo ngược mà bằng cách lặp lại báo giá. Trong trường hợp này, Subpothoty nội dung trông như thế này:

"[^"\\]*[\\[.|\n][^"\\]*]*"|'[^'\\]*[\\[.|\n][^'\\]*]*'
6

Các mẫu tránh việc sử dụng một nhóm chụp và sao lưu [ý tôi là một cái gì đó như

"[^"\\]*[\\[.|\n][^"\\]*]*"|'[^'\\]*[\\[.|\n][^'\\]*]*'
7] và sử dụng một sự thay thế đơn giản nhưng với
"[^"\\]*[\\[.|\n][^"\\]*]*"|'[^'\\]*[\\[.|\n][^'\\]*]*'
8 ở đầu, về yếu tố.

Perl thích:

["'][?:[?

Bài Viết Liên Quan

Chủ Đề