我使用Kinvey作为我的 android 应用程序的后端。我已按照此处找到的有关他们的数据存储查询的指南进行操作。查询似乎区分大小写。
如何进行不区分大小写的查询?
我在 Kinvey 论坛上发布了同样的问题,得到了以下答案:
Query 类有一个 regex(String field, String regex) 方法,您可以通过定义一个不区分大小写的正则表达式来使用它。
类似于: Query myQuery = new Query().regex("myJSONKey", myRegex);
这是文档:http ://devcenter.kinvey.com/android/reference/api/java/reference/com/kinvey/java/Query.html#regEx (java.lang.String , java.lang.Object)
归功于爱德华弗莱明。
但是,对于任何有兴趣的人,根据这里:
需要注意的是,使用正则表达式不区分大小写的 /i 进行搜索意味着 mongodb 无法按索引进行搜索,因此针对大型数据集的查询可能需要很长时间。
我相信 Kinvey 使用 mongodb 作为他们的数据存储。无论如何,我使用了同一篇文章中提到的建议,并且效果很好。