【问题标题】:iOS: Changing or swap positions of subString by index in NSMutableStringiOS:通过 NSMutableString 中的索引更改或交换子字符串的位置
【发布时间】:2017-02-17 19:56:01
【问题描述】:

我正在尝试更改或交换子字符串的位置。我知道您可以通过以下方式使用 NSMutableArray 做到这一点:

[myMutableArray exchangeObjectAtIndex:(20) withObjectAtIndex:30];

你们中的任何人都知道 NSMutableString 是否有类似的东西?

【问题讨论】:

  • 你试过什么?你看过NSString 的文档吗?您是否了解基本算法,例如交换 2 个数组元素的值?您真的需要 Apple 为您编写吗?

标签: ios objective-c nsarray nsmutablestring


【解决方案1】:

与 NSMutableString 类似的东西是使用 deleteCharacters(in:) 和 insert(at:) ,这不是轻量级的。举个例子(我不知道 Obj-C 但在 Swift 中),这会是这样的:

var myTestString: NSMutableString = "itIsATestString"
let mySubStringRange = myTestString.range(of: "Test")
myTestString.deleteCharacters(in:mySubStringRange)
myTestString.insert("Test", at: 2)

【讨论】:

    【解决方案2】:

    你有两个选择:

    theChar = [ myString characterAtIndex:4 ];
    newString = [ NSString stringWithCharacters:&theChar length:1 ];
    

    或者,一起避免characterAtIndex:但仍然使用一个选定的字符:

    newString = [ myString substringWithRange:NSMakeRange( 4, 1 ) ];
    

    【讨论】:

      猜你喜欢
      • 2011-01-23
      • 1970-01-01
      • 2021-04-07
      • 2014-10-07
      • 2020-11-08
      • 1970-01-01
      • 2012-06-24
      • 2015-12-09
      • 2017-07-13
      相关资源
      最近更新 更多