Как искать содержимое NSMutablearray в подстроке строки NSString? - PullRequest
0 голосов
/ 15 июля 2011

Я создал NSMutableArray и ищу / сопоставляю содержимое массива с подстрокой NSString's, но как это сделать?

NSMutableArray *tmparray = {@"PPG" , @"AG" , @"HD" };
NSString *tmpstring = @"MAAPPG";

if ([tmparray containsObject:tmpstring] ) {
  NSLog(@"String found");
}

Но этого не происходит, потому что tmparray содержит «PPG», а не «MAAPPG», как искать соответствие подстроки?

Ответы [ 3 ]

3 голосов
/ 15 июля 2011

Вы можете использовать NSPredicate для этого, но это может быть медленно.Вот более простой подход к тому, что вы пытаетесь:

NSMutableArray *tmparray = {@"PPG" , @"AG" , @"HD" };
NSString *tmpstring = @"MAAPPG";
NSRange *tmprange;
for(NSString *string in tmparray) { 
    tmprange = [tmpstring rangeOfString:string];
    if (tmprange.location != NSNotFound) {
        NSLog(@"String found");
        break;
    }
}
2 голосов
/ 15 июля 2011

как насчет этого

for(NSString *arrString in tmparray){
 if([tmpstring rangeOfString:arrString].location != NSNotFound){
   NSLog(@"String found");
 }
}
0 голосов
/ 15 июля 2011
NSArray *tmparray = [NSArray arrayWithObjects:@"PPG" , @"AG" , @"HD",nil];
    NSString *tmpstring = @"MAAPPG";
    NSRange textRange;
    for(NSString *string in tmparray)
    {
        textRange =[tmpstring rangeOfString:string];
        if(textRange.location != NSNotFound)
        {
            NSLog(@"String found ");
        }
    }

проверьте это, используя также другие подстроки ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...