![](/img/trans.png)
[英]Convert String.Index to Int or Range<String.Index> to NSRange
[英]Creating Range<String.Index> from constant Ints
这段代码构造了一个范围,然后应在对substringWithRange
的调用中使用这是怎么回事?
let range = Range<String.Index>(start: 0, end: 3)
Swift编译器(在Xcode 7.1.1中)使用以下错误消息对其进行标记:
无法使用类型为'(start:Int,end:Int)'的参数列表来调用'Range <Index>'类型的初始化程序
您需要引用特定字符串的startIndex,然后前进:
let longString = "Supercalifragilistic"
let startIndex = longString.startIndex
let range = Range(start: startIndex, end: startIndex.advancedBy(3))
您可以使用多种方式
let startIndex = text.startIndex
let endIndex = text.endIndex
var range1 = startIndex.advancedBy(1) ..< text.endIndex.advancedBy(-4)
var range2 = startIndex.advancedBy(0) ..< startIndex.advancedBy(5)
var range3 = startIndex ..< endIndex
让substring = text.substringWithRange(范围)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.