从 Realm 数据库查询中获取变音符号不敏感的结果

Get diacritic insensitive results from Realm database query

我在为 Android 应用程序从 Java 中的 Realm 引擎获取字符串的简单查询时遇到了麻烦。 如我的主题标题所述,我想从我的查询中获得变音符号不敏感的结果。

示例: 如果用户键入单词 "securite",我希望我的查询为 return "securite" 和 "sécurité".

我该怎么做?

非常感谢您的帮助!

目前这在 Realm 中是不可能的。您唯一的选择是管理包含您感兴趣的字母表中每个字母的所有可能性的表。例如 [a, á, à, å, etc] 然后为每个字符串计算所有可能的排列并构建一个巨大的查询使用 equalTo() 和 or()。构建这样的查询可能比执行它需要更长的时间,但这是一个非常有趣的用例!如果您最终实施了它,我很想知道结果!

虽然 Realm 目前不支持。根据您控制的数据量,您还可以添加可在搜索中使用的 "normalized" 字段。这里描述了一种方法:Remove diacritics from string in Java