从常量 Int 创建 Range<String.Index>
Creating Range<String.Index> from constant Ints
这段构建范围的代码有什么问题,这个范围应该在对 substringWithRange
的调用中提供?
let range = Range<String.Index>(start: 0, end: 3)
Swift 编译器(在 Xcode 7.1.1 中)用此错误消息标记它:
Cannot invoke initializer for type 'Range<Index>' with an argument list of type '(start: Int, end: Int)'
需要引用具体字符串的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
让子串 = text.substringWithRange(范围)
这段构建范围的代码有什么问题,这个范围应该在对 substringWithRange
的调用中提供?
let range = Range<String.Index>(start: 0, end: 3)
Swift 编译器(在 Xcode 7.1.1 中)用此错误消息标记它:
Cannot invoke initializer for type 'Range<Index>' with an argument list of type '(start: Int, end: Int)'
需要引用具体字符串的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
让子串 = text.substringWithRange(范围)