从特定字符开始截断NSString的一部分

时间:2009-05-31 15:38:42

标签: string cocoa-touch nsstring truncate

我有一个字符串

NSString * myOldString = @"This is a string (and this part is between brackets)"

现在,我希望以这种方式截断字符串,基本上括号之间的所有内容(包括括号)都会被截断。

更准确地说:我根本不关心第一个括号之后发生了什么。

我不能做一个简单的stringByReplacingOccurrencesOfString:,因为我无法预测括号之间的内容。因此,结果字符串应为:

"This is a string"

2 个答案:

答案 0 :(得分:7)

一种方法:

NSArray *components = [myOldString componentsSeparatedByString:@"("];
NSString *newString = [components objectAtIndex:0];

也应该适用于没有'('

答案 1 :(得分:0)

应该简化

NSRange r = [myOldString rangeOfString:@"("]
NSString new string = [myOldString substringToIndex:r.location];

如果括号仍然只有-1