こんにちは、私は次のコードを使用して arrayTags 内の検索を正常に実行しました。ここで、arrayTags は「tag」という名前の各 XML 要素のフィールドの配列です。問題は、たとえば、タグに赤、白、青の 3 つの単語があるとします。「赤」または「白、青」、またはタグ要素に正確に含まれるものを検索すると、すべて問題ありません。しかし、「赤白」を検索しても何も返されません。実際には、arrayTags に含まれているものを正確に検索した場合にのみ検索結果が返されますが、連続していない単語は返されません。どうすればこの問題を解決できるか知っていますか? 本当にありがとう!
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText{
[resultArray removeAllObjects];
NSString *cellTitle;
for (cellTitle in arrayTags){
NSString *stringa = cellTitle;
NSRange range = [stringa rangeOfString:searchText];
NSComparisonResult result = [cellTitle compare:searchText options:NSCaseInsensitiveSearch range:range];
if (result == NSOrderedSame){
int posizione = [arrayNames indexOfObjectIdenticalTo:cellTitle];
[result Array addObject:[arrayNames objectAtIndex:posizione]];
}
}
[self.tableView reloadData];
}