MongoDB 正则表达式未按预期工作

MongoDB regular expression not working as expected

db.col.find({_id: {term: "garcia"}}) 

找到包含术语 = "garcia" 的文档。然而,

db.col.find({_id: {term: /garcia/}})

没有找到任何东西。什么原因?

文件:

{ "_id" : { "term" : "garcia" }, "count" : 43512, "count_users" : 15388 }

您当前使用 {_id: {term: /garcia/}} 的查询要求对 _id 本身进行精确匹配,而不仅仅是其中的 term 字段。所以它试图找到一个文档,其中 _id 是一个具有单个 term 字段的对象,该字段具有该正则表达式的 value

使用点符号将正则表达式与 term 字段匹配:

db.col.find({'_id.term': /garcia/})