我试图用另一个角色替换一个角色。由于某种原因,stringByReplacingCharactersInRange不起作用。我还没有找到关于如何解决这个问题的简单解释。
var binaryColor: String = "000"
(binaryColor as NSString).stringByReplacingCharactersInRange(NSMakeRange(0, 1), withString: "1")
println("This is binaryColor0: \(binaryColor)")
结果是000而不是100。 谢谢你的帮助!
答案 0 :(得分:2)
您不需要将其强制转换为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")
答案 1 :(得分:1)
您必须设置变量:
var binaryColor: String = "000"
binaryColor = (binaryColor as NSString).stringByReplacingCharactersInRange(NSMakeRange(0, 1), withString: "1")
println("This is binaryColor0: \(binaryColor)")