2016-07-27 51 views
0

我想創建一個node.js腳本來查詢從數據的數組,例如MongoDB數據庫。電子郵件。電子郵件數據存儲爲單個字符串,而不是數組。我還需要從輸入電子郵件數組中進行不區分大小寫的匹配。創建NodeJS查詢Mongodb不區分大小寫和從數據數組

我目前的要求如下。請建議,如果有更好的方法:

db.users.find({email:{$in:[/[email protected]/i,/[email protected]/i]}} 

輸入數組將包含以下,從另一個文件看書:

var matchOn = ["[email protected]", "[email protected]"]; 

所以輸出應該包含如果任一電子郵件比賽的所有電子郵件(不區分大小寫) 。如何在NodeJS中構造此查詢,特別是我不確定如何指定在查詢中的matchOn數組的每個條目上匹配並添加/i。謝謝!

+0

你確定你沒有忘記'或'在你的電子郵件地址? – DrakaSAN

+0

我可以使用或OR,但是每種情況下,你如何在JavaScript中添加不區分大小寫/ i到查詢?{$ or:{電子郵件:matchOn [0]},{email:matchOn [1]}}。 – Evan

+0

我在說你的'matchOn'變量。 – DrakaSAN

回答

0

在較新版本的蒙哥應該可以使用$text

它有大小寫敏感的選項,並且還指出

術語的字符串,MongoDB的解析,並使用查詢文本索引。 MongoDB執行術語的邏輯或搜索

看起來它應該工作。但是,從來沒有嘗試過。

+0

我不能修改數據庫,只能查詢。不需要文本需要將其插入數據庫的能力嗎? – Evan

相關問題