Mongodb 如何筛选在其属性之一中包含某些字符串的mongo文档?

Mongodb 如何筛选在其属性之一中包含某些字符串的mongo文档?,mongodb,mongoose,loopbackjs,Mongodb,Mongoose,Loopbackjs,我有一个包含一些基本用户信息的模型用户。我正在为我的应用程序添加搜索功能,我想查找在其displayName属性中包含搜索词的用户 用户模型 [ { "_id" : ObjectId("5bbda46a433ced65ac7c4699"), "email" : "henoktes72@gmail.com", "displayName" : "Henok Tesfaye", "userId" : "5bbda46a433ced

我有一个包含一些基本用户信息的模型用户。我正在为我的应用程序添加搜索功能,我想查找在其displayName属性中包含搜索词的用户

用户模型

[
    {
        "_id" : ObjectId("5bbda46a433ced65ac7c4699"),
        "email" : "henoktes72@gmail.com",
        "displayName" : "Henok Tesfaye",
        "userId" : "5bbda46a433ced65ac7c4698",
        "reputationNumber" : 0,
        "questions" : [ 
            "5bbf135d7883513e3839a34c"
        ],
        "answers" : []
    },
    {
        "_id" : ObjectId("5bbdb84a7da23035740bf056"),
        "email" : "mezi@gmail.com",
        "displayName" : "Mezi Villager",
        "userId" : "5bbdb84a7da23035740bf055",
        "reputationNumber" : 5,
        "questions" : [ 
            "5bbf1f137883513e3839a34f"
        ],
        "answers" : [ 
            "5bbf6933e564763770d81828"
        ]
    }
]
如果搜索词为Henok,则输出必须为

[
    {
        "_id" : ObjectId("5bbda46a433ced65ac7c4699"),
        "email" : "henoktes72@gmail.com",
        "displayName" : "Henok Tesfaye",
        "userId" : "5bbda46a433ced65ac7c4698",
        "reputationNumber" : 0,
        "questions" : [ 
            "5bbf135d7883513e3839a34c"
        ],
        "answers" : []
    }
]

.find({displayName:“Henok”})
返回空记录。

用户可以在
中使用正则表达式。find(…)
函数:

.find({displayName: /Henok/})

您可以在
where
cond的环回中使用
filter

在环回中使用正则表达式的两种方法


谢谢@datdinhqooc。谢谢@IfekharDani+1用于描述不区分大小写。
Model.find({
    where: {'displayName': /video/i }, //i for case-insensitive.
}, function(err, resilus) {
  console.log(resilus);
});
var search = new RegExp(search, 'i'); //i for case-insensitive.

Model.find({
    where: {'displayName': search },
}, function(err, resilus) {
  console.log(resilus);
});