Если вы просто хотите, чтобы первая подстрока содержалась символами "(" и ")" и что-нибудь после этого, я бы порекомендовал сделать что-то вроде этого:
NSString *original = @"(01–05) Operations on the nervous system";
NSString *firstPart = [NSString string];
NSString *secondPart = [NSString string];
NSScanner *scanner = [NSScanner scannerWithString:original];
[scanner scanUpToString:@"(" intoString:NULL]; // find first "("
if (![scanner isAtEnd]) {
[scanner scanString:@"(" intoString:NULL]; // consume "("
[scanner scanUpToString:@")" intoString:&firstPart]; // store characters up to the next ")"
if (![scanner isAtEnd]) {
[scanner scanString:@")" intoString:NULL]; // consume ")"
// grab the rest of the string
secondPart = [[scanner string] substringFromIndex:[scanner scanLocation]];
}
}
Конечно, вторая строка будетв начале есть пробелы и так далее, чтобы избавиться от них, вы можете сделать что-то вроде:
secondPart = [secondPart stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet];
Преимущество использования NSScanner заключается в том, что вам не нужно жестко кодироватьначало и конец подстроки firstPart.