Objective-C Split()?


Answers:


199
NSArray *arrayOfComponents = [yourString componentsSeparatedByString:@":"];

yourString所在的位置 @"one:two:three"

和arrayOfComponents将包含 @[@"one", @"two", @"three"]

您可以使用 NSString *comp1 = arrayOfComponents[0];

https://developer.apple.com/documentation/foundation/nsstring/1413214-componentsseparatedbystring


29
请注意,反之为[NSArray componentsJoinedByString:]
devios1

如果我使用@“ Hello world”,我会遇到问题。它将返回一个包含3个对象的数组,其中最后一个包含@“”。我可以遍历数组并将其删除,但是有更好的方法吗?
Au Ris 2014年

1
@AuRis首先尝试从字符串中修剪空白:[string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
theDuncs 2014年

95

试试这个:

    NSString *testString= @"It's a rainy day";
    NSArray *array = [testString componentsSeparatedByString:@" "];


4

使用这个:[[string componentsSeparatedByString:@“,”] [0];


6
我仍然想知道为什么人们会回答年龄很长的问题并建立了答案...更何况您只是选择没有意义的第一个元素。
Christian Stewart

0

如果您想访问第一个单词:

[[string componentsSeparatedByString:@" "] objectAtIndex:0];
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.