开发者

Remove Part of an NSString and copy it into another NSString

So I have an NSString, lets say it: NSString *mainString = @"My Name is Andrew (I like computers)"; And I want remove everything from the "(" to the ")" from mainString. And I want to put everything in between the "()" into a subString.

For example:

NSString *mainString = @"My Name is Andr开发者_如何学JAVAew (I like computers)";
NSString *subString;

//The code I need help with

mainString = @"y Name is Andrew ";
subString = @"I like computers";

I hope this makes sense. It would really help me. Thanks in Advance. I've been playing with NSRange and NSMutableStrings but I'm having trouble. Thanks in advance.


int startPosition = [mainString rangeOfString:@"("].location + 1;
int endPosition   = [mainString rangeOfString:@")"].location;

NSRange range = NSMakeRange(startPosition, endPosition - startPosition);

NSString *subString = [mainString substringWithRange:range];

and as darvids0n has mentioned in below comment:

    mainString = [mainString substringToIndex:startPosition - 1]


This is probably an easier way:

NSString *mainString = @"My Name is Andrew (I like computers)";
NSString *subString;

NSArray *array = [mainString componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"()"]];

mainString = [array objectAtIndex:0]; // "My Name is Andrew "
subString = [array objectAtIndex:1]; // "I like computers"
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜