拥有与此正则表达式查询匹配的示例文档

时间:2012-06-03 03:38:16

标签: mongodb

所以我正在阅读Kyle的书,并且遇到了他用于使用正则表达式来匹配某些文本的示例:

db.reviews.find({
    user_id: ObjectId("4c4b1476238d3b4dd5000001"),
    text: /best|worst/i
})

但是它没有示例文档,所以我无法想象他为这个例子使用的文档结构如何。那么请你写一个快速文档,上面的正则表达式就可以了吗? 据我所知,它当然有一个_id键和一个文本键,但该文本键的值是什么样的?

感谢。

1 个答案:

答案 0 :(得分:1)

想象一下这样的事情,其他地方有一个用户集合,这是每个用户写过的所有评论的集合。当您想要获得特定用户的所有评论时,您将查询与该用户的ID匹配的所有评论 - 即user_id部分。现在,您决定只希望评论中包含最佳单词或最差单词(无论大小写)。这是查询的第二部分。

假设下面的三个文档都有匹配的user_id,那么第一个和第三个匹配文本查询,但中间的不匹配。

{
   user_id: ObjectId(),
   text : "This was the worst one of my life!"
}

{

   user_id: ObjectId(),
   text : "Totally awesome, couldn't be better!"
}

{
   user_id: ObjectId(),
   text : "BEST EVAH!"
}