码迷,mamicode.com
首页 > 移动开发 > 详细

iOS: 在Swift中优雅的实现Substring

时间:2014-10-31 18:57:23      阅读:232      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   color   os   ar   sp   div   

在Swift中,当我们想要截取某个字符串时,方法如下:

let carNumber = "沪A12345"
let startIndex = advance(userCar.carPlateNumber.startIndex, 0)
let endIndex = advance(startIndex, 1)
let range = startIndex..<endIndex
println(carNumber[range]) // 输出沪


呃,好怀念substring方法啊,那我们就自己实现一个吧。

extension String {
    subscript (r: Range<Int>) -> String {
        get {
            let startIndex = advance(self.startIndex, r.startIndex)
            let endIndex = advance(startIndex, r.endIndex - r.startIndex)
            
            return self[Range(start: startIndex, end: endIndex)]
        }
    }
}


调用很简单,示例如下:

var s = "Hello, playground"
println(s[0...5]) // ==> "Hello,"
println(s[0..<5]) // ==> "Hello"


感谢Rob Napier http://stackoverflow.com/questions/24044851/how-do-you-use-string-substringwithrange-or-how-do-ranges-work-in-swift

iOS: 在Swift中优雅的实现Substring

标签:style   blog   http   io   color   os   ar   sp   div   

原文地址:http://www.cnblogs.com/ilovewindy/p/4065749.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!