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