繁体   English   中英

如何通过 mongolab 在 mongodb 中使用正则表达式?

[英]How can i use regex in mongodb over mongolab?

我的问题很简单,但我找不到确切的解决方案。 所有文章都在一行代码下面:

collection.findOne({hello:'world_no_safe'});

上面的代码确实有效并返回给我未定义的错误。但它是存在的。 无论如何,我的确切解决方案在上面。 请帮助我并教我如何通过在 json api 内部搜索来使用正则表达式。 我想使用 %mysearch data% 作为正则表达式。 我想进行文本搜索,它使用 json 中的所有句子。

例如:我有一个json:

[{"data":"Andreas Kollegger 解释了你可以用图形数据库回答什么样的问题。不仅仅是大网站"},{"data":"X 解释了你可以用图形回答什么样的问题数据库。不仅仅是大网站"}]

如果我使用这个表达式: collection.findOne({hello:'%Andreas%'}); 它必须返回第一个数据。 下面是我项目中的真实样本。


var mongo = require('mongodb');
var Server = mongo.Server;
var Db = mongo.Db;


var server = new Server('ds053479.mongolab.com', 53479, {auto_reconnect : true});
var db = new Db('orient', server);


db.open(function(err, client) {
    client.authenticate('testname', 'fsfsff', function(err, success) {
        var collection = db.collection('Models');
           collection.insert({Name:'test1'});
       // Fetch the document
    collection.findOne({Name:'%world_no_safe%'});

});

根据MongoDB 手册,您可以使用$regex运算符:

collection.findOne({Name: { $regex: '.*world_no_safe.*' }});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM