2013-06-25 231 views
2
NSString *str = @"A X P X P X L X E R A N D O M"; 
NSArray *strArray = [str componentsSeparatedByCharactersInSet:@" "]; 

NSArray *words = @[@"APPLE", @"ORANGE", @"LEMON"]; 

我在* str中有一堆字母表字符,最好的方法是將它們與* word數組中的每個字符進行匹配,以便@「APPLE」返回一個匹配。Nspredicate匹配字符串中的字符

回答

0

嗯,我不知道這是不是最好的方法,它不使用NSPredicate,但它是一種方法,你可以實現你想要的。

NSString *str1 = @"A X P X P X L X E R A N D O M"; 

NSCharacterSet* c = [NSCharacterSet characterSetWithCharactersInString:str1]; 
NSArray *words = @[@"APPLE", @"ORANGE", @"LEMON"]; 

for (NSString* s in words) { 
    if ([[s stringByTrimmingCharactersInSet:c] isEqualToString:@""]) { 
     NSLog(@"%@ is a match",s); 
    } 
}