javascript - 如何在 mongodb 的 angularjs 中使用变量模式

标签 javascript regex angularjs mongodb

我想使用 angular-js 和正则表达式在 mongodb 上进行 find() 查询。 但我无法在正则表达式中使用变量模式。

下面是相同的代码。

var User=mongoose.model('User');
exports.searchname = function(req,res){

var pattern="hello";
User.find({displayName:{$regex:"/"+pattern+"/",$options:"si"}}).exec(function(err, data) {
    if (err) {
        return res.status(400).send({
            message: errorHandler.getErrorMessage(err)
        });
    } else {

        res.json({Data:data});
    }
});

我还尝试使用/pattern/而不是“/”+pattern+“/”。也没有成功。

最佳答案

尝试创建一个 RegExp 您的查询对象:

var pattern = new RegExp('hello', 'i'); /* or new RegExp(/hello/, 'i'); */
User.find({displayName: pattern}).exec(function(err, data) {
    if (err) {
        return res.status(400).send({
            message: errorHandler.getErrorMessage(err)
        });
    } else {

        res.json({Data:data});
    }
});

关于javascript - 如何在 mongodb 的 angularjs 中使用变量模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32680142/

相关文章:

javascript - Angular JS - 绑定(bind)自定义 html 属性

javascript - 扩展 Angular 服务/工厂以获取日期数组和整数数组,并创建带有键值对的数组

javascript - 在客户端 js 上使用来自第三方的跨源 JSON?

c# - 正则表达式拆分和过滤器构造

javascript - 如何在不刷新页面的情况下获取页面上的新内容

regex - Twitter 状态 URL 正则表达式

regex - 如何用一个正则表达式匹配命令行中的参数?

javascript - 在 FireFox 中关闭模态时显示的必需工具提示

javascript - 将 csv 文件添加到 webpack 构建

javascript - 在 D3 中选择子节点的正确方法