UPDATE:由於MongoDB的2.4的人會使用「文本」索引和全文搜索查詢來做到這一點。你可以閱讀關於他們here。如果使用最近的MongoDB,下面的方法將是愚蠢和不必要的。
但是,如果你有MongoDB的< 2.4.0你可以使用正則表達式,像這樣:
> db.reg.insert({searchword: "win"})
> db.reg.insert({searchword: "window"})
> db.reg.insert({searchword: "Win"})
> db.reg.find()
{ "_id" : ObjectId("4ecd2e33dd68c9021e453d12"), "searchword" : "win" }
{ "_id" : ObjectId("4ecd2e36dd68c9021e453d13"), "searchword" : "window" }
{ "_id" : ObjectId("4ecd2e39dd68c9021e453d14"), "searchword" : "Win" }
> db.reg.find({ searchword: /^win$/i })
{ "_id" : ObjectId("4ecd2e33dd68c9021e453d12"), "searchword" : "win" }
{ "_id" : ObjectId("4ecd2e39dd68c9021e453d14"), "searchword" : "Win" }
然而,你的版本是行不通的,因爲你不需要「/」 S時使用正則表達式$操作:
> db.reg.find({ searchword: { $regex: "^win$", $options: '-i' }})
{ "_id" : ObjectId("4ecd2e33dd68c9021e453d12"), "searchword" : "win" }
{ "_id" : ObjectId("4ecd2e39dd68c9021e453d14"), "searchword" : "Win" }
請注意,不區分大小寫查詢不使用索引所以它可能是有意義的做一個小寫的搜索內容字段,這樣可以加快該查詢了。
轉到here對RegularExpressions
謝謝.....這對我很有用 – Praneeta