我試圖在Mongo中區分大小寫的搜索。基本上我想不區分大小寫的字符串匹配我正在使用正則表達式。這是我的代碼SpringMongo不區分大小寫的搜索正則表達式
Query query = new Query(Criteria.where(propName).regex(value.toString(), "i"));
但上述劑量匹配我整個字符串(有時與空格字符串)。即使它是一個子字符串,它也會返回值。
例如:假設我的收藏有兩個值「Bill」和「Bill status」,即使我的搜索是「bill status」,它也會返回我「bill」,即使有一個子字符串字符串我在尋找
我試圖Query query = new Query(Criteria.where(propName).is(value.toString()));
但上面是區分大小寫的。有人可以請這方面的幫助。
感謝您抽出寶貴時間在這兩個地方回覆:)。我正在使用spring-mongo與mongo db進行交互。我可以在那裏使用相同的嗎?如果是這樣,你能告訴我如何在我的代碼中改變它嗎?我從上面的命令中嘗試了「i(/^value.tostring $)」。謝謝 – Droidme 2012-08-01 08:41:06
@Droidme:作爲spring-mongo的替代品,你可能想看看[Jongo](http://jongo.org/)。 Jongo目前的使命是「在Mongo shell中查詢Java」。 – Stennie 2012-08-02 03:57:12
我不是一個spring-mongo開發者,但是我建議你嘗試: Query query = new Query(Criteria.where(propName).regex(「^」+ value.toString()+「$」,「i」 )); – 2012-08-02 07:33:28