删除NSString的最后一个字符

我有一些麻烦,试图删除NSString的最后一个字符。 我在Objective-C中是个新手,我不知道如何做这个工作。

你们能照亮我吗?

NSString *newString = [oldString substringToIndex:[oldString length]-1]; 

始终参考文档 :

  • substringToIndex:
  • length

要包括与您的案例相关的代码:

 NSString *str = textField.text; NSString *truncatedString = [str substringToIndex:[str length]-1]; 

尝试这个:

 s = [s substringToIndex:[s length] - 1]; 
 NSString *string = [NSString stringWithString:@"ABCDEF"]; NSString *newString = [string substringToIndex:[string length]-1]; NSLog(@"%@",newString); 

你可以看到= ABCDE

 NSString = *string = @"abcdef"; string = [string substringToIndex:string.length-(string.length>0)]; 

如果有要删除的字符(即string的长度大于0) (string.length>0)返回1,则返回代码:

  string = [string substringToIndex:string.length-1]; 

如果没有要删除的字符(即string长度不大于0) (string.length>0)返回0,则返回代码:

 string = [string substringToIndex:string.length-0]; 

这可以防止崩溃。

这段代码将只返回string的最后一个字符,而不是删除它:

 NSString *newString = [oldString substringToIndex:[oldString length]-1]; 

您可以使用它来删除最后一个字符并保留string的剩余值:

 str = [str substringWithRange:NSMakeRange(0,[str length] - 1)]; 

并使用substringToIndex 长度0的NSString将导致崩溃。

你应该在添加validation之前这样做,如下所示:

 if ([str length] > 0) { str = [str substringToIndex:[s length] - 1]; } 

有了这个,使用子串方法是安全的。

注意:如果苹果易受崩溃影响,苹果会拒绝您的应用程序。

这是我偶然发现的一小段代码,我还没有在Stack上看到它。

只有当你想删除或改变的字符存在时才有效,这在很多情况下都很方便。 如果字符不存在,它不会改变你的NSString:

 NSString = [yourString stringByReplacingOccurrencesOfString:@"YOUR CHARACTERS YOU WANT TO REMOVE" withString:@"CAN either be EMPTY or WITH TEXT REPLACEMENT"]; 

这是我如何使用它:

 //declare what to look for NSString * suffixTorRemove = @"</p>"; NSString * prefixToRemove = @"<p>"; NSString * randomCharacter = @"</strong>"; NSString * moreRandom = @"<strong>"; NSString * makeAndSign = @"&"; //I AM INSERTING A VALUE FROM A DATABASE AND HAVE ASSIGNED IT TO returnStr returnStr = [returnStr stringByReplacingOccurrencesOfString:suffixTorRemove withString:@""]; returnStr = [returnStr stringByReplacingOccurrencesOfString:prefixToRemove withString:@""]; returnStr = [returnStr stringByReplacingOccurrencesOfString:randomCharacter withString:@""]; returnStr = [returnStr stringByReplacingOccurrencesOfString:moreRandom withString:@""]; returnStr = [returnStr stringByReplacingOccurrencesOfString:makeAndSign withString:@"&"]; //check the output NSLog(@"returnStr IS NOW: %@", returnStr); 

这一行很容易执行一个三个行动:

  1. 检查你想找的string
  2. 可以用你喜欢的任何东西replace或改变它们
  3. 不影响周围的代码

这就像wordsearch除了iOS

简单和最佳的方法

 [mutableString deleteCharactersInRange:NSMakeRange([myRequestString length]-1, 1)];