如何删除一个字符?

时间:2011-09-26 13:09:32

标签: iphone objective-c xcode nsstring

您好我正在开发一个代码,我需要从uitextview中删除最后一个字符 我试过这个

-(IBAction)delete:(id)sender{
    uitextview.text =[NSString stringWithFormat:@"%@%@",uitextview.text,@"\b"];
}

在删除按钮操作上我给出了这段代码,但这并没有执行删除。 请帮助完成这项工作,并在提前感谢O

7 个答案:

答案 0 :(得分:8)

删除最后一个字符时请使用以下内容:

-(IBAction)delete:(id)sender{
    uitextview.text =[uitextview.text substringToIndex:[uitextview.text length] - 1];
}

答案 1 :(得分:5)

要从字符串中删除第一个字符,请尝试以下操作:

-(IBAction)delete:(id)sender{
    uitextview.text =[uitextview.text substringFromIndex:1];
}

删除最后一个:

-(IBAction)delete:(id)sender{
    uitextview.text = [uitextview.text substringToIndex:[uitextview.text length]-1];
}

您可能还需要检查字符串是否为空,否则可能会出现“index out of bounds”异常

答案 2 :(得分:2)

这也可以

- (IBAction)delete:(id)sender {

  [uitextview deleteBackward];
}

答案 3 :(得分:0)

您将需要使用substringFromIndex方法,如下所示:

uitextview.text = [uitextview.text substringFromIndex:1];

确保在执行此操作之前检查长度,否则substringFromIndex调用将引发异常。

http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html#//apple_ref/occ/instm/NSString/substringFromIndex

答案 4 :(得分:0)

if ([string length] >0)
{
    string = [string SubstringToIndex: [sting length] -1];
}

答案 5 :(得分:0)

按照上面的答案,使字符串删除它需要的第一个字符

substringfromindex表示:创建一个从索引处开始的新字符串(此处为1)直到结束

bevNoMoney = [totalBevSales substringFromIndex:1];

答案 6 :(得分:0)

有几个答案容易受到索引超出界限的影响。这是一个更安全的实现:

-(IBAction)delete:(id)sender{
    if (uitextview.text.length > 0) {
        uitextview.text =[uitextview.text substringToIndex:[uitextview.text length] - 1];
    }
}