say У меня есть txt-файл с данными следующим образом;Поиск положения символа, связанного с положением другого символа в NSString
12345,123,98765,JOHN,RL,s/w
12345,123,98765,SAM,RL,s/w
12345,123,98765,MIC,RL,s/w
12345,123,98765,MIC,RL,s/w
12345,123,98765,MIC,RL,s/w
12345,123,98765,MIC,RL,s/w
12345,123,98765,MIC,RL,s/w
12345,123,98765,AMI,RL,s/w
12345,123,98765,THIMOTHY,RL,s/w
Он поставляется в моем приложении, и я читаю данные в nsstring. И я прохожу поисковый запрос, скажем, «MIC». Когда я передаю этот поисковый запрос, я хочу получить строки, которые имеют термин поиска, и удалить все остальные строки из строки.
Я попытался следующий код:
NSString *searchTerm = @"MIC";
NSRange rangess = [dataToBeParsed rangeOfString:searchTerm];
NSRange range = [dataToBeParsed rangeOfString:@"" options:NSBackwardsSearch range:rangess];
NSLog(@"range.location: %lu", range.location);
NSString *substring = [dataToBeParsed substringFromIndex:range.location+1];
NSLog(@"substring: \n%@'", substring);
Я смог найти местоположение поискового термина и очистить содержимое строки до поиска местоположения. Но я хочу получить полную строку.
Примечание: В моем исходном документе строки, содержащие поисковый запрос, будут отображаться постоянно, как в документе.
Пожалуйста, помогите.
Держа его в строке не является правильным. Вам нужен массив из массива строк. – trojanfoe
Вы можете использовать регулярное выражение: '^ (. * (?: MIC). *) $'. Просто замените «MIC» тем, что вы хотите найти. Оценка этого выражения даст вам полные строки. – akashivskyy
Как сказал @trojanfoe, лучше использовать NSArray из NSArray, особенно когда CSV представляется «с запятой в качестве разделителя». – Larme