【发布时间】:2012-01-01 21:24:31
【问题描述】:
我正在尝试通过比较列表中的值('stringToCompare')和用户输入的搜索文本('searchText')来进行过滤。代码 sn-p 如下。
NSComparisonResult result = [stringToCompare compare:searchText options:(NSCaseInsensitiveSearch|NSDiacriticInsensitiveSearch) range:NSMakeRange(0, [searchText length])];
NSLog(@"Search text: %@", searchText);
NSLog(@"string to compare: %@", stringToCompare);
NSLog(@"result: %i", result);
NSLog(@"NSOrderedsame: %i", NSOrderedSame);
if (result == NSOrderedSame)
{
[self.filteredListContent addObject:genericObj];
}
但是,从下面的 NSLog 结果中可以看出,我似乎无法获得预期的结果。在这种情况下,我希望结果为“0”,因为搜索文本“Xot”可以作为“stringToCompare”的一部分找到。我在这里错过了什么?
2012-01-02 05:13:59.184 onethingaday[5815:707] search text: Xot
2012-01-02 05:13:59.185 onethingaday[5815:707] string to compare: One exotic place you got laid in before. How was it?
2012-01-02 05:13:59.188 onethingaday[5815:707] result: -1
2012-01-02 05:13:59.188 onethingaday[5815:707] NSOrderedsame: 0
【问题讨论】:
标签: objective-c string search string-comparison