从NSString的开头删除字符

时间:2010-08-26 07:59:05

标签: objective-c cocoa cocoa-touch nsstring

我有NSString

NSString *data = @"abcdefghi";

但我希望数据为"defghi"

我可以做些什么来改变它?

4 个答案:

答案 0 :(得分:4)

你可以这样做:

NSMutableString *data = [NSMutableString stringWithString:@"abcdefghi"];
[data deleteCharactersInRange:NSMakeRange(0, 3)];

这是使用NSMutableString,它允许您删除并添加字符/字符串。

此处使用的方法是deleteCharactersInRange这会删除NSRange中的字母,在这种情况下,范围的location0,因此它从开始,length3,因此会删除3个字母。

答案 1 :(得分:2)

[data substringFromIndex:2]

这将返回一个新的String,其中包含剪切索引(2)的字符。

答案 2 :(得分:1)

如果您不知道要删除的字符的确切位置,则可选择使用NSScanner:Apple Guide to NSScanners。您可能还想查看本指南的其余部分,因为它非常好地描述了您可以使用Obj-C中的字符串执行的操作。

答案 3 :(得分:0)

NSString是不可变的。除非要创建新字符串,否则需要使用NSMutableString。看看deleteCharactersInRange方法。