TL; DR
วิธีที่ถูกต้องในการทำเช่นนี้ใน mongo
ห้ามใช้RegExp
เป็นไปตามธรรมชาติและใช้การสร้างดัชนี inbuilt ของ mongodb ค้นหา
ขั้นตอนที่ 1 :
db.articles.insert(
[
{ _id: 1, subject: "coffee", author: "xyz", views: 50 },
{ _id: 2, subject: "Coffee Shopping", author: "efg", views: 5 },
{ _id: 3, subject: "Baking a cake", author: "abc", views: 90 },
{ _id: 4, subject: "baking", author: "xyz", views: 100 },
{ _id: 5, subject: "Café Con Leche", author: "abc", views: 200 },
{ _id: 6, subject: "Сырники", author: "jkl", views: 80 },
{ _id: 7, subject: "coffee and cream", author: "efg", views: 10 },
{ _id: 8, subject: "Cafe con Leche", author: "xyz", views: 10 }
]
)
ขั้นตอนที่ 2 :
จำเป็นต้องสร้างดัชนีในฟิลด์TEXTใดก็ตามที่คุณต้องการค้นหาโดยไม่ต้องมีการสืบค้นการทำดัชนีจะช้ามาก
db.articles.createIndex( { subject: "text" } )
ขั้นตอนที่ 3:
db.articles.find( { $text: { $search: "coffee",$caseSensitive :true } } ) //FOR SENSITIVITY
db.articles.find( { $text: { $search: "coffee",$caseSensitive :false } } ) //FOR INSENSITIVITY
$caseSensitive: false
ได้ ดู: docs.mongodb.org/manual/reference/operator/query/text/…