2012-05-02 3 views
0

У меня есть строка, как это: NSString *str [email protected]"text |0|1|5|this is an other text"; я хотел бы иметь компонент часов в отдельной строке, например:отделить NSString к NSString (ы)

NSString *str1 [email protected]"text"; 
NSString *str2 [email protected]"0"; 
... 

Как я могу сделать это с полной NSString (ул). спасибо за ваш ответ

+0

возможный дубликат [раскол NSString в NSArray] (http://stackoverflow.com/questions/6304450/split-nsstring-into-nsarray) – jlehr

ответ

7

Вы можете разделить эти данные на основе измерителя трубы. Ваш результат будет возвращен, разделен, в NSArray. Затем вы можете получить доступ к элементам по индексу.

NSArray *strs = [str componentsSeparatedByString: @"|"]; 

e.g.

NSString *str1 = (NSString*)[strs objectAtIndex: 0]; // @"text " 
NSString *str2 = (NSString*)[strs objectAtIndex: 1]; // @"0" 
+0

Вы можете добавить столько разделителей, сколько хотите, в строку param, и она будет проверять все их. –

+0

@norbert, вы можете думать о '-componentsSeparatedByCharactersInSet:'. '-componentsSeparatedByString:' обрабатывает строку в целом как разделитель. –

+0

yes Действительно, sry, my bad –

2
NSRange range = [yourString rangeOfString:@"|"]; 
NSString *string1 = [yourString substringToIndex:range.location]; 
NSString *string2 = [yourString substringFromIndex:range.location+1]; 

Вы также можете отделить строку, как этот

+0

Чтобы улучшить качество вашего ответа, пожалуйста, укажите, как/почему ваше сообщение решит проблему. –

+0

надеюсь, что это поможет! –

Смежные вопросы