2017-04-25 44 views
1

我有這有一堆文件看起來像這個集合的部分字符串的文件:搜索通過一個集合,它有一個字符串數組

{ 
    "_id" : ObjectId("58d1d3e2b31da89828d0b194"), 
    "ihash" : "15e1e4b84492fe6f", 
    "firstseen" : ISODate("2017-03-22T01:31:14.405Z"), 
    "lastseen" : ISODate("2017-03-22T14:01:25.792Z"), 
    "names" : [ 
     "carrot", 
     "apple", 
     "banana" 
    ] 
} 

,我想通過搜索我集合來查找名稱列表中包含「rr」的所有文檔。

任何幫助,這將是巨大的:)

回答

1

您可以使用正則表達式蒙哥(見https://docs.mongodb.com/manual/reference/operator/query/regex/)。
從蒙戈控制檯:

db.collection.find({ "names" : /rr/ }) 

或可替代

db.collection.find({ "names" : {"$regex": /rr/ }}) 

您可能要檢查出了支持,如不區分大小寫的其他選項,匹配錨的文檔(^爲啓動,字符串末尾的$)以及其他如果您的需要需要它。