Sử dụng find() với regex //i (flag i: không phân biệt hoa thường) để tìm chuỗi con. Các ký tự đặc biệt regex trong dữ liệu (như /, (, )) vẫn được khớp bình thường.
Tạo collection với Message chứa ký tự đặc biệt:
> db.demo696.insertOne({Message:"/Good/"});
{ "acknowledged" : true, "insertedId" : ObjectId("5ea6d664551299a9f98c9391") }
> db.demo696.insertOne({Message:"(good)"});
{ "acknowledged" : true, "insertedId" : ObjectId("5ea6d67a551299a9f98c9392") }
> db.demo696.insertOne({Message:"/Bye/"});
{ "acknowledged" : true, "insertedId" : ObjectId("5ea6d68b551299a9f98c9393") }
> db.demo696.insertOne({Message:"(GOOD)"});
{ "acknowledged" : true, "insertedId" : ObjectId("5ea6d693551299a9f98c9394") }
Hiển thị tất cả:
> db.demo696.find();
Tìm Message chứa "good" (không phân biệt hoa thường):
> db.demo696.find({Message:/good/i});
Kết quả (3 bản ghi chứa good/GOOD):
{ "_id" : ObjectId("5ea6d664551299a9f98c9391"), "Message" : "/Good/" }
{ "_id" : ObjectId("5ea6d67a551299a9f98c9392"), "Message" : "(good)" }
{ "_id" : ObjectId("5ea6d693551299a9f98c9394"), "Message" : "(GOOD)" }
Lưu ý: Regex /good/i khớp chuỗi con "good" bất kỳ vị trí nào. Ký tự '/' và '()' trong dữ liệu được coi là chữ thường, không ảnh hưởng regex.