我在mongoDb的搜索查询返回一个空列表,同时使用正则表达式来搜索
我有一个用户数据库,我试图在我的数据库中按名称搜索, 例如: 如果我的数据库有firstName as, 艾伦 亚历 阿伦 Alexender 鲍勃 比尔我在mongoDb的搜索查询返回一个空列表,同时使用正则表达式来搜索
当我写我的查询
router.get('/friendSearch/:q', function (req, res) { var result = [];
User.find({firstName: "/" + req.params.q + "/"}, function (err, list) {
if (err) {
console.log(err);
}
else {
console.log("In else");
console.log(list);
}
});
});
在我的请求,通过“A” PARAMS查询应返回, 艾伦 亚历 阿伦 Alexender
但是,尽管我得到一个空列表。 感谢
回答:
使用$regex
代替:
{firstName: { '$regex' : req.params.q, '$options' : 'i' }}
可以去除$options
如果你想。 i参数用于搜索不区分大小写以匹配大小写的情况。 如果您不需要区分大小写的选项,你可以写你的查询这样的:
{firstName: { '$regex' : req.params.q}}
这里documentation
以上是 我在mongoDb的搜索查询返回一个空列表,同时使用正则表达式来搜索 的全部内容, 来源链接: utcz.com/qa/257317.html