0
我使用以下代码在数组中搜索在UISearchBar中键入的短语,然后添加该短语所在的索引的内容找到将显示在表视图中的数组。搜索并找到一个短语并获取它之前和之后的两个单词
-(void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)enteredSearchText{
if ([enteredSearchText length] == 0) {
[wholeTextOfDoaasLive removeAllObjects]; //wholeTextOfDoaasLive is an NSMutableArray
}
else{
[wholeTextOfDoaasLive removeAllObjects];
for (NSString * string in AllWholeText) {//AllWholeText is an NSMutableArray
NSRange r = [string rangeOfString:enteredSearchText options:NSCaseInsensitiveSearch];
if (r.location != NSNotFound){
[wholeTextOfDoaasLive addObject:string];
}
}
}
[_searchResultsTable reloadData];
}
然而,AllWholeText阵列的各项指标中含有大量的文字,我不希望添加整个对象(即搜索到的这句话被发现)为wholeTextOfDoaasLive阵列。相反,我只想在它的前后添加一个找到的短语加两个单词到我的wholeTextOfDoaasLive数组中。我怎样才能做到这一点?
我不认为这是一个简单的问题。更简单的解决方案是显示:“... upTo10CharBefore_SearchedText_upTo10CharAfter ...”,而不是“upToToWordsBefore_SearchedText_upTo10WordsAfter”。其中一个复杂的部分是,如果'enteredSearchText'是“我”,并且你有像“Hi There”这样的句子(它结合了更多的单词等) – Larme