情報系人間のブログ

プログラミング、開発に関することを書いていきます。

swift2.0でStringの先頭、最後を削除する

swift2.0ではdropFirst,dropLastがなくなったのでタイトルの動作をどのようにすればよいのか調べた。

What is the most succinct way to remove the first character from a string in Swift? - Stack Overflow

こちらのstackoverflowの回答でいくつか良い方法が挙がっている。こういったユーティリティ的な動作はふたつ目の回答のようにextensionにしておくのが良い。
swift2.0からadvance関数はBidirectionalIndexTypeのadvancedByに変わっているのでそこを直すと以下の様になる。

extension String {
    func chopPrefix(count: Int = 1) -> String {
        return self.substringFromIndex(self.startIndex.advancedBy(count))
    }
    
    func chopSuffix(count: Int = 1) -> String {
        return self.substringToIndex(self.endIndex.advancedBy(-count))
    }
}