Я хочу найти определенную строку в массиве строк в объекте c. Может ли кто-нибудь помочь мне в этом отношении?
Поиск строк в строковом массиве в объекте c
Ответ 1
BOOL isTheObjectThere = [myArray containsObject: @"my string"];
или если вам нужно знать, где находится
NSUInteger indexOfTheObject = [myArray indexOfObject: @"my string"];
Я настоятельно рекомендую вам прочитать документацию на NSArray. Лучше всего это сделать, прежде чем публиковать свой вопрос: -)
Ответ 2
Вы можете использовать класс NSPredicate для поиска строк в массиве строк. См. Приведенный ниже пример кода.
NSMutableArray *cars = [NSMutableArray arrayWithObjects:@"Maruthi",@"Hyundai", @"Ford", @"Benz", @"BMW",@"Toyota",nil];
NSString *stringToSearch = @"i";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF contains[c] %@",stringToSearch]; // if you need case sensitive search avoid '[c]' in the predicate
NSArray *results = [cars filteredArrayUsingPredicate:predicate];
Это наиболее эффективный способ поиска строк в массиве строк
Ответ 3
NSMutableArray *cars = [NSMutableArray arrayWithObjects:@"Max",@"Hai", @"Fine", @"Bow", @"Bomb",@"Toy",nil];
NSString *searchText = @"i";
NSArray *results = [cars filteredArrayUsingPredicate:predicate];
// if you need case sensitive search avoid '[c]' in the predicate
NSPredicate *resultPredicate = [NSPredicate
predicateWithFormat:@"title contains[c] %@",
searchText];
searchResults = [cars filteredArrayUsingPredicate:resultPredicate];