从Swift中获取NSMutableString的字符串



NSMutableString获得String的正确方法是什么?我目前正在使用:

var mutableString = NSMutableString(string: string)
var string = mutableString.substring(from: 0)

似乎有点hackish ...

谢谢

只需将NSMutableString施放为String

var mutableString = NSMutableString(string: "Example")
var string = String(mutableString)

或:

var mutableString = NSMutableString(string: "Example")
var string = mutableString as String

,如注释中已经提到的,正确的方法是完全使用 NSMutableString

您给定的示例

let mutableString = NSMutableString(string: "Hello World")
mutableString.replaceCharacters(in: NSRange(location: 4, length: 5), with: "XXXXX")
let swiftString = String(mutableString)

可以用本机Swift

var string = "Hello World"
let nsRange = NSRange(location: 4, length: 5)
string.replaceSubrange(Range(nsRange, in: string)!, with: "XXXXX")

相同的结果,但后者更有效。

这应该做技巧:

let newStr = String(mutableString)

最新更新