Сортировать строку NSString - PullRequest
0 голосов
/ 02 марта 2012

У меня есть приложение для iOS с панелью поиска и UITableView.когда я нажимаю в строке поиска, например, "ta", веб-сервисы возвращают мне все слова, содержащие "at", например, "beta", "mota", "at work", "ebebebatbcbcb", я хотел бычтобы только слова «ведьма» начинались с «в», а не все слова «в» содержали «в».

Спасибо за ваши ответы.

Ответы [ 4 ]

2 голосов
/ 02 марта 2012

попробуйте это:

-(NSMutableArray *)array:(NSMutableArray *)array withstart:(NSString *)string{


NSPredicate *sPredicate = [NSPredicate predicateWithFormat:@"SELF beginswith[c] %@",string];
[array filterUsingPredicate:sPredicate];
return array;
}

Или другим способом:

NSString *prefix = @"at";     
NSArray *final_array=[array objectsAtIndexes:[array indexesOfObjectsPassingTest:^(id obj, NSUInteger idx, BOOL *stop)
                                              {
                                                  return [obj hasPrefix:prefix];
                                              }]];
0 голосов
/ 02 марта 2012

Вот простой ответ

NSString *prefix = @"at";     
[array objectsAtIndexes:[array indexesOfObjectsPassingTest:^BOOL(NSString *string, NSUInteger idx, BOOL *stop) {
    return [string hasPrefix:prefix];        
}]];
0 голосов
/ 02 марта 2012

NSPredicate это путь:

NSString *searchTerm = @"ta";
NSArray *matchingKeywords = [result filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"SELF beginswith[cd] %@",searchTerm]];
0 голосов
/ 02 марта 2012

Звучит как работа для NSPredicate!

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