【发布时间】:2017-08-23 15:38:15
【问题描述】:
我在 MongoDB 中使用 Loopback 节点 js 框架。 在这里,我正在检查一个字段是否包含给定的字符串
user.find({
where: {
or: [{
mobile: {
"regexp": '/' + data.search + '/i'
},
contacts:{
"regexp": '/' + data.search + '/i'
}}]
}
}, function(err, mobileResult) {
if (err) {
callback(err, null);
} else {
.......
.......
}
});
这个适用于字符串类型字段contacts,但不适用于数字字段mobile。
我尝试了这些post 的答案,但对我没有用。
【问题讨论】:
-
不要使用
'/'和'/i',通过$options传递不区分大小写的修饰符。 -
我试过了,但我认为,它与环回不同,它显示
MongoError: unknown operator: $$regex.@WiktorStribiżew 请再次阅读帖子。 -
我正在检查...您是否使用了
$regex : new RegExp(data.search, "i")?顺便说一句,您在答案中提供了不同的链接。 -
是的,我也试过了,那个链接有更多答案
-
Regular expressions 匹配字符串中的模式。如果您需要进行模式匹配,我建议您将
mobile值存储为字符串而不是数字。
标签: node.js regex mongodb loopbackjs strongloop