[英]How to implement a tinder-like search based on distance in Android?
[英]How to implement search like in Android Studio?
这是我要实现的功能:即使中间缺少一些字母,搜索结果也必须包含搜索键。 因此,例如,如果用户要搜索noodles
并意外将其拼写错误并输入nooles
,则仍然会弹出正确的搜索结果。 以下是一些其他示例:
我想我需要将搜索关键字分解为两半。 然后显示包含键的两半的结果。 有人做了这样的事情吗? 如果我将其分为三个或四个部分怎么办? 如果我将其分解为一个字符的字符串,并且唯一的要求是结果包含搜索键包含的所有字母怎么办?
我没有对此进行足够的测试,但是我只是写了这个,它似乎起作用了。 请提供其他答案,使用其他方法!
// returns true if a result string contains key
// (or any combination of its letters in order)
private boolean contains(String result, String key) {
// make both strings lowercase and remove spaces
result = result.toLowerCase().replace(" ", "");
key = key.toLowerCase().replace(" ", "");
// use a char array
char[] letters = key.toCharArray();
// loop through it
for (char c : letters) {
if (!result.contains(c + "")) {
return false; // stop searching if can't find at least one char
}
// remove the first part of the string, so that we're searching for
// letters that exist in a string in order they appear in the key.
result = result.substring(result.indexOf(c));
}
return true;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.