NSDiacriticInsensitiveSearch相当于Android

时间:2014-04-09 09:20:46

标签: java android search dictionary

Xcode中的NSDiacriticInsensitiveSearch是一个有助于搜索而不需要处理重音的功能:“e”=“é”。此功能向用户显示开始/具有“e”和“é”的单词的所有结果,无论用户输入“e”还是“é”
android平台上这个函数的等价物是什么?

2 个答案:

答案 0 :(得分:0)

据我所知,Android(或Java真的)不提供开箱即用的任何东西。但是,您可以使用Apache Commons StringUtils.stripAccents方法从搜索字符串和搜索字符串中删除重音,然后执行搜索。因此,您不会在string1内搜索string2,而是在StringUtils.stripAccents(string1)内搜索StringUtils.stripAccents(string2)。 它不是完全相同的东西,但它应该让你合理地接近。

答案 1 :(得分:0)

如果您可以减少比较一对字符串的问题,java.text.CollatorSE 7 JavaDocAndroid JavaDoc)会为使用不同“强度”模式比较两个字符串提供基础:{ {1}}会区分“e”和“é”字符,而PRIMARY会将它们视为相等。