Iphone 如何以编程方式从NSString中删除特定字符?
我需要帮助过滤字符串。假设我有一个名为myString的字符串Iphone 如何以编程方式从NSString中删除特定字符?,iphone,objective-c,ios,xcode,nsstring,Iphone,Objective C,Ios,Xcode,Nsstring,我需要帮助过滤字符串。假设我有一个名为myString的字符串 NSString *myString = @"HelloWorld"; 我怎样才能过滤掉“你好”这个词呢。或者,如果我想删除前五个字母,我如何删除特定数量的字母(开头) 我面临的另一个例子是: NSString *myString = @"Hello hi World"; 同样,我想删除“Hello”和后面的空格。另一次,我可能想删除两个单词“Hello hi”和后面的空格,以便只剩下“World” 有人能解释一下删除NSSt
NSString *myString = @"HelloWorld";
我怎样才能过滤掉“你好”这个词呢。或者,如果我想删除前五个字母,我如何删除特定数量的字母(开头)
我面临的另一个例子是:
NSString *myString = @"Hello hi World";
同样,我想删除“Hello”和后面的空格。另一次,我可能想删除两个单词“Hello hi”和后面的空格,以便只剩下“World”
有人能解释一下删除NSStrings中字符的基本方法吗?我对objective-c完全陌生,阅读课堂参考资料让我更加困惑。我只有12岁,所以不要因为不理解类引用而对我苛刻。 nString有很多方法来做几乎所有的事情,但是要考虑的是NString是不可变的,所以所有这些方法都返回一个新的字符串。如果出现问题,您可以查看具有操作当前字符串的方法的NSMutableString。对于这种情况,您需要一个NSMutableString:
NSMutableString *mutableString = @"Hello World";
[mutableString deleteCharactersInRange:NSMakeRange([mutableString length]-11, 6)];
NSLog (@"%@", mutableString);
NSMakeRange解释:首先转到字符串的末尾,然后倒数长度(11)。现在你在“H”字上。现在删除以下六个字符。“世界”现在被保留。您不能编辑NSString对象,它是不可变的。您应该改用NSMutableString。Xcode 9•Swift 4或更高版本 以下两种从字符串中删除字符的方法: dropLast()返回可选值,因此可以为零。 removeLast()返回最后一个字符,不是可选的,因此如果字符串为空,它将崩溃
let string = "Hello World"
let substring1 = String(string.dropFirst()) // "ello World"
let substring2 = String(string.dropFirst(2)) // "llo World"
let substring3 = String(string.dropLast()) // "Hello Worl"
let substring4 = String(string.dropLast(2)) // "Hello Wor"
阅读NSString类参考。如果您仍然不知道该怎么做,请发布一些代码并再次询问。我想知道的是,您以前是如何以非编程方式删除它们的?谢谢,很高兴我能帮助您!