Hãy nói rằng tôi có một chuỗi tùy ý nhưTạo một biểu thức chính quy case-insensitive từ một chuỗi trong Ruby
`A man + a plan * a canal : Panama!`
và tôi muốn thực hiện tìm kiếm regex cho chuỗi giống nhau ngoại trừ trường hợp. Đó là, biểu thức chính quy này phải phù hợp với chuỗi
`a man + A PLAN * a canal : PaNaMa!`
Tôi mang nó cách tiếp cận tốt nhất là dấu chéo ngược-thoát khỏi tất cả các nhân vật với một ý nghĩa đặc biệt trong Ruby biểu thức thông thường, và sau đó làm Regexp.new
với chuỗi đó và Regexp::IGNORECASE
như các đối số . Có đúng không? Có biểu thức chính quy đã cố gắng và đúng sự thật để chuyển đổi chuỗi tùy ý thành nghĩa đen cụm từ thông dụng không?
Nhân tiện, cuối cùng tôi muốn sử dụng cụm từ thông dụng này để thực hiện truy vấn MongoDB không phân biệt dạng chữ. Vì vậy, nếu có một cách khác tôi có thể làm điều đó, xin vui lòng cho tôi biết.
Cảm ơn, đó chỉ là những gì tôi đang tìm kiếm! (Mặc dù như MongoDB, tôi nhận ra rằng nếu tôi đang thực hiện loại tìm kiếm này thường xuyên, tôi thực sự nên lưu trữ một phiên bản xuống của chuỗi vì lý do hiệu suất.) –