Swift 内置简单类型:Range、Tuple 与 Optional 详解
1. Swift 中的 Range
在 Swift 里获取 Range 并非易事。有一种方法是让 Swift 将从 Cocoa 方法调用返回的 NSRange 转换为 Swift Range:
let s = "hello"
let r = s.range(of:"ell") // 一个 Swift Range(包装在 Optional 中)
也可以将 Range 的端点生成为索引值。有了合适类型的 Range 后,就能通过下标提取子字符串:
let s = "hello"
let ix1 = s.index(s.startIndex, offsetBy:1)
let ix2 = s.index(ix1, offsetBy:2)
let s2 = s[ix1...ix2] // "ell"
replaceSubrange(_:with:) 方法可用于拼接范围,从而修改字符串:
var s = "hello"
let ix = s.startIndex
let r = s.index(ix, offsetBy:1)...s.index(ix, offsetBy:3)
s.replaceSubrange(r, with: "ipp") // s 现在是 "hippo"
超级会员免费看
订阅专栏 解锁全文
10

被折叠的 条评论
为什么被折叠?



