我正在嘗試在使用正則表達式時在MongoDB中執行$ ne查詢,但它似乎不起作用。當我不使用正則表達式時,$ ne(不等於)運算符正常工作。
BasicDBObject q = new BasicDBObject()
q.put(field, ["\$ne": value])
上述工作正常,結果集不包含任何具有該字段的值的文檔。
但我需要它是不區分大小寫的。所以我這樣做
q.put(field, ["\$ne": Pattern.compile(value, Pattern.CASE_INSENSITIVE)])
但這並不工作..
,所以我想,讓我去命令行,看看我可以做手工。所以我這樣做:
db.Order.find({"bill.recipient.name": {$ne: /diep/i}},{"bill.recipient.name":1})
它仍然無法正常工作!
有什麼想法?
呀 - 「找對象,其中場不等於這個正則表達式」不同於「找對象,其中字段不匹配這個正則表達式。」 – 2011-04-10 15:15:29
ahhh你的權利..我完全錯過了$不是操作員。多麼微妙的差異。多謝你們! – Khon 2011-04-10 15:49:57