Я хочу найти конкретную строку в массиве строк в объекте c. Может кто-нибудь мне в этом помочь?
ios
objective-c
arrays
nsstring
Грязный рыцарь
источник
источник
Ответы:
BOOL isTheObjectThere = [myArray containsObject: @"my string"];
или если вам нужно знать, где это
NSUInteger indexOfTheObject = [myArray indexOfObject: @"my string"];
Я настоятельно рекомендую вам прочитать документацию по NSArray . Лучше сделать это перед тем, как задавать вопрос :-)
источник
Вы можете использовать класс 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];
Это наиболее эффективный способ поиска строк в массиве строк.
источник
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];
источник