Получение подстроки от определенного символа в NSString
Если у меня есть NSString, который изначально:
"ABCDE*FGHI"
Как мне превратить его в
"FGHI"
Другими словами, все из звездочки и далее сохраняется.
Аналогично, как бы я превратил его в:
"ABCDE"
(все до звездочки сохранено)
Спасибо
Ответы
Ответ 1
NSString *myString = @"ABCDE*FGHI";
NSArray *myArray = [myString componentsSeparatedByString:@"*"];
- ключ 0 myArray будет содержать @ "ABCDE"
- ключ 1 будет содержать @ "FGHI"
Если вы хотите, чтобы более одного символа являлся разделителем,
используйте componentsSeparatedByCharactersInSet
:
NSString *myString = @"ABCDE*FGHI-JKL";
NSArray *myArray = [myString componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"*-"]];
- ключ 0 myArray будет содержать @ "ABCDE"
- ключ 1 будет содержать @ "FGHI"
- ключ 2 будет содержать @ "JKL"
Ответ 2
NSString *myString = @"ABCDE*FGHI";
NSString *subString = [myString substringWithRange: NSMakeRange(0, [myString rangeOfString: @"*"].location)];
Ответ 3
NSString *myString = @"ABCDE*FGHI";
NSArray *myArray = [myString componentsSeparatedByString:@"*"];
Ответ 4
NSString *yourString = @"ABCDE*FGHI";
NSMutableArray * array = [[NSMutableArray alloc] initWithArray:[yourString componentsSeparatedByString:@"*"]];
for(int i =0 ; i < array.count ; i++){
NSLog(@"- %d : %@ \n",i,[array objectAtIndex:i]);
}