Iphone 如何使用UISearchBar搜索数组字符串中的第二个单词?

Iphone 如何使用UISearchBar搜索数组字符串中的第二个单词?,iphone,objective-c,search,uisearchbar,Iphone,Objective C,Search,Uisearchbar,我必须使用UISearchBar在数组中搜索一个单词。例如,我在索引2的数组中有一个“chickensalad”字符串。现在如果我想用最后一个词“沙拉”来搜索它,我该怎么做? 目前我正在使用这段代码,它运行良好,但如果您从第一个单词开始搜索 (appDelegate.isAirlineSelection == YES) { for (int i = 0; i < [menuArray count]; i++) { if ([[[[me

我必须使用UISearchBar在数组中搜索一个单词。例如,我在索引2的数组中有一个“chickensalad”字符串。现在如果我想用最后一个词“沙拉”来搜索它,我该怎么做? 目前我正在使用这段代码,它运行良好,但如果您从第一个单词开始搜索

(appDelegate.isAirlineSelection == YES) {
            for (int i = 0; i < [menuArray count]; i++) {
                if ([[[[menuArray objectAtIndex:i] itemName] uppercaseString] hasPrefix:search]||[[[[menuArray objectAtIndex:i] itemName] uppercaseString] hasSuffix:search]) {
                    [tableMenuArray addObject:[menuArray objectAtIndex:i]];
                    NSLog(@"Found");
                }
            }
(appDelegate.isAirlineSelection==YES){
对于(int i=0;i<[menuArray count];i++){
如果([[[menuArray objectAtIndex:i]itemName]uppercaseString]hasPrefix:search]|[menuArray objectAtIndex:i]itemName]uppercaseString]hasSuffix:search]){
[tableMenuArray添加对象:[menuArray对象索引:i]];
NSLog(@“找到”);
}
}

请帮帮我

试试这种方法,它甚至可以在单词之间搜索:

for(NSString *name in menuArray)        
{
    if ([name rangeOfString:search options:NSLiteralSearch|NSCaseInsensitiveSearch].location != NSNotFound)
        [tableMenuArray addObject:name];
            NSLog(@"Found");

}

首先,您应该将数组名称分为两部分并创建两个数组,然后您可以轻松地使用第二个数组的搜索栏并找到确切的结果,您想要什么

for (NSString *name in lastnames)
    {

            NSComparisonResult result = [name compare:searchText options:(NSCaseInsensitiveSearch|NSDiacriticInsensitiveSearch) range:NSMakeRange(0, [searchText length])];
            if (result == NSOrderedSame)
            {
                [searchedNames addObject:name];
            }

    }