我正在尝试用另一个角色替换一个角色。由于某些原因,stringByReplacingCharactersInRange不起作用。关于如何解决这个问题,我还没有找到一个简单的解释。
var binaryColor: String = "000"
(binaryColor as NSString).stringByReplacingCharactersInRange(NSMakeRange(0, 1), withString: "1")
println("This is binaryColor0: \(binaryColor)")
结果是000而不是100。
谢谢你的帮助!
最佳答案
不需要将其强制转换为NSString即可使用stringByReplacingCharactersInRange只需更改创建字符串范围的方式,如下所示:
更新:Xcode 7.2•Swift 2.1.1
let binaryColor = "000"
let resultString = binaryColor.stringByReplacingCharactersInRange(
Range(start: binaryColor.startIndex, end: binaryColor.startIndex.advancedBy(1)),
withString: "1")
或者只是
let resultString2 = binaryColor.stringByReplacingCharactersInRange(
binaryColor.startIndex..<binaryColor.startIndex.advancedBy(1),
withString: "1")