这是我目前的搜索代码。
-(void)filterContentForSearchText:(NSString *)searchText scope:(NSString *)scope {
[filteredList removeAllObjects];
for(Location *item in list)
{
NSRange result = [item.title rangeOfString:searchText options:NSCaseInsensitiveSearch range:NSMakeRange(0, [searchText length])];
if(result.location != NSNotFound)
{
[filteredList addObject:item];
}
}
}
我如何更改此标题以匹配标题的任何部分而不仅仅是开头。
示例:
目前,如果我搜索“Las”,“拉斯维加斯”将出现在列表中,但是当我搜索“拉斯维加斯”时,它不会出现。
我希望搜索词“Vegas”能够回到'拉斯维加斯'
谢谢, 阿什利
答案 0 :(得分:1)
使用rangeOfString:options:代替rangeOfString:options:range:。 range
参数将搜索限制为字符串的开头。
或者,如果由于某种原因你想使用rangeOfString:options:range:那么使用它作为范围:NSMakeRange(0, [item.title length])