我想在一個數組來分割字符串:如何分隔@「;」之前的第一個字符串在一個數組?
NSString *test = @"How are you;<random>[Good;Bad]";
NSArray *howareyou = [test componentsSeparatedByString:@";"]
但後來它分裂<random>[Good
和Bad]
...
我只是想分裂How are you
和<random>[Good;Bad]
哪有我這樣做?
我想在一個數組來分割字符串:如何分隔@「;」之前的第一個字符串在一個數組?
NSString *test = @"How are you;<random>[Good;Bad]";
NSArray *howareyou = [test componentsSeparatedByString:@";"]
但後來它分裂<random>[Good
和Bad]
...
我只是想分裂How are you
和<random>[Good;Bad]
哪有我這樣做?
NSString *test = @"How are you;<random>[Good;Bad]";
NSRange colonRange = [test rangeOfString:@";"];
if (colonRange.location != NSNotFound){
NSString *firstHalf = [test substringToIndex:colonRange.location];
NSString *secondHalf = [test substringFromIndex:NSMaxRange(colonRange)];
NSLog(@"%@ - %@", firstHalf, secondHalf);
}else{
NSLog(@"No luck");
}
或者這個。更好。我的lisp有時很明顯。 – bbum
NSString *test = @"How are you;<random>[Good;Bad]";
NSArray *howareyou = [test componentsSeparatedByString:@";"];
NSString *desired = [howareyou objectAtIndex:0];
NSString *rest = [[howareyou subarrayWithRange:NSMakeRange(1, [howareyou count]-1)]
componentsJoinedByString:@";"];
沒有得到有效的少得多(或脆 - 沒有錯誤檢查,範圍檢查,長度檢查,等...)比。這裏和那裏的長度有限,可能對於大量輸入等是不可接受的。
先測量。優化後。
如果你用'''劃分時說明了什麼是你需要的規則,它會有所幫助。它僅僅是第一個';'嗎? – 2011-09-22 14:43:18
是的,它總是第一個; – Smoothie