你们中任何人都知道在Swift 3中使用stringByReplacingCharactersInRange
吗?
我试图将此Objective-C
转换为Swift
:
strToSort = [strToSort stringByReplacingCharactersInRange:NSMakeRange((i-1),1) withString: [strToSort substringWithRange:NSMakeRange((i),1)]];
我非常感谢你的帮助。
答案 0 :(得分:7)
在Swift 3中它是。
strToSort = strToSort.replacingCharacters(in: range, with: str)
注意:此范围是Swift Range<String.Index>
对象的类型而不是NSRange
。
有关Range
检查Apple Documentation。
<强>实施例强>
let str = "Apple"
let i = 3
let range = str.index(str.startIndex, offsetBy: i-1)..<str.index(str.startIndex, offsetBy: i)
let subStringRange = str.index(str.startIndex, offsetBy: i)..<str.index(str.startIndex, offsetBy: i+1)
print(str.replacingCharacters(in: range, with: str.substring(with: subStringRange)))
<强>输出:强>
Aplle
答案 1 :(得分:0)
快捷方式,使用NSString
let strToSort: NSString = "string to sort"
let newString = strToSort.replacingCharacters(in: NSMakeRange(0, 6), with: "")
print(newString) // to sort
希望有所帮助