搜索数组中的单词

时间:2016-06-30 08:11:55

标签: ios objective-c iphone arrays

我有@"fog",@"foggy fod",@"computer",@"lap rop"之类的字符串数组。 现在我有@"i like fog"之类的字符串,现在我想知道我的字符串是否包含我的数组中的任何单词。请告诉我的字符串中是否存在数组中的任何单词。

到目前为止我已尝试过这个

NSArray *array = [dictionary objectForKey:@"Keywords"];
NSLog(@"arry %@",array[0]);
int i=0;
for (i=0; i<[array count]; i++) 
{
    if([title containsString:array[i]])
    {
        break;
        return true;
    }
}

2 个答案:

答案 0 :(得分:1)

由于return true;,在执行break之前退出for循环。只需删除休息:

for (i=0; i<[array count]; i++) {
    if([title containsString:array[i]])
    {
        return true;
    }
}

答案 1 :(得分:1)

您可以使用NSPredicate这样做。

NSArray *array = @[@"fog",@"foggy fod",@"computer",@"lap rop"];
NSString *str = @"i like computer";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@" %@ contains[cd] SELF", str];
NSArray *filtered = [array filteredArrayUsingPredicate:predicate];
NSLog(@"filtered %@",filtered);