2016-12-14 76 views
1

我正在使用正則表達式從我的節點js應用程序不工作的mongodb中獲取數據。這是代碼片段。該查詢不能與該組記錄匹配。來自node.js的Mongo db的正則表達式不起作用

var analysis_date = '/^'+moment(fromTime).format('YYYY-MM').toString()+'/'; 
user_analysis.find({ 
parent_id: usrId, 
analysis_date: { 
    $regex : analysis_date 
    } 
},function(err, result) { 
//some Code goes here}); 
+0

您是否設法解決問題? –

+0

是的,它與你提到的第二種方式一起工作。 – Angshuman

+0

然後考慮upvoting和接受答案。這將有助於未來的訪問者看到答案爲您工作。 –

回答

0

除了指定的正則表達式作爲一個字符串,試圖傳遞一個RegExp對象:

user_analysis.find({ 
    "parent_id": usrId, 
    "analysis_date": new RegExp(analysis_date, 'i') 
}, function(err, result) { 
    // ... 
}); 

如果你願意,你也可以傳遞一個字符串,但隨後你需要刪除/分隔符:

user_analysis.find({ 
    "parent_id": usrId, 
    "analysis_date": { 
     $regex: '^' + moment(fromTime).format('YYYY-MM').toString(), 
     $options: "i" 
    } 
}, function(err, result) { 
    // ... 
}); 
相關問題