如何在Mongoose中创build部分string匹配的search查询?
我是新来的Mongoose.js,我想知道如何创build一个简单的Mongoose查询返回包含提交的顺序字符的值。
这将是一个自动完成表单,它需要返回包含字符input到search字段的名称的城市。 我应该从.where
查询开始吗?
你可以find正则expression式,这应该允许你以灵活(尽pipe不是非常快)的方式进行search。 代码会是类似的东西;
var input = 'ln'; // the input from your auto-complete box cities.find({name: new RegExp(input, "i")}, function(err, docs) { ... });
当然,你可以对string进行预处理,以便从头开始匹配(由^
前缀),结尾(由$
附加)等等。只要注意与长string的任意部分匹配可能会很慢。