Я использую следующий код, чтобы получить заголовок строки.Все работает вплоть до строки, где я получаю return [s2 objectAtIndex: 0].Проблема в том, что он просто удаляет «&» из строки, а не выводит строку перед «&».Например:
Я пытаюсь получить заголовок из строки «Sweat (David Guetta Remix) - Snoop Dogg & David Guetta».Метод будет возвращать «Пот Дэвида Гетты», а не «Пот».Если вы видите проблему, пожалуйста, укажите на нее, так как это очень поможет!
- (NSString *)getTitleFromString:(NSString *)string {
NSString *newSongName = [NSString stringWithString:string];
NSArray *chunks = [newSongName componentsSeparatedByString:@"-"];
NSString *chunks2s = [chunks objectAtIndex:0];
NSArray *chunks2 = [chunks2s componentsSeparatedByString:@"("];
NSString *s = [chunks2 objectAtIndex:0];
NSArray *s2 = [s componentsSeparatedByString:@"&"];
return [s2 objectAtIndex:0];
}
Редактировать ----- Окончательный код:
- (NSString *)getTitleFromString:(NSString *)string {
NSArray * a = [string componentsSeparatedByString:@"-"];
NSString *b = [a objectAtIndex:0];
NSArray *c = [b componentsSeparatedByString:@"("];
NSString *d = [c objectAtIndex:0];
NSArray *e = [d componentsSeparatedByString:@"&"];
if ([e count] > 2) {
return [e objectAtIndex:0];
}
else {
return d;
}
return @"";
}