MILLEN BOX

音楽好きの組み込みソフトエンジニアによるプログラミング(主にiOSアプリ開発)の勉強の記録

Swiftで文字列先頭から指定の文字数取得する方法 [Swift1.2] [subStringToIndex]

ある文字列のおしりの部分がいらない。編集したい。という場合があります。

そのような時は'''subStringToIndex'''を使用すると楽みたいです。
ただ、使用方法で迷ってしまった部分があったので、備忘録として残しておきます。

//Hello World!という文字列が入った変数strを用意する
let str = "Hello World!"

//strの頭から5文字だけ抜き出したい場合、subStringToIndexを使って以下のように記述
(str as NSString).substringToIndex(5)     //strをNSStringにCastして使用することに注意

コード内でも書きましたが、型Stringの変数をNSStringにCastしないとエラーとなりますので注意が必要です。

Castしない場合は、以下のように記述できます。

//Hello World!という文字列が入った変数strを用意する
let str = "Hello World!"

//strの頭から5文字だけ抜き出したい場合、subStringToIndexを使って以下のように記述 (strをNSStringにCastしない場合)
str.substringToIndex(advance(str.startIndex, 5))

以上です。
ここを参考にしました。

[iOS] Swiftで文字列から任意の文字列を取得・残す方法 - Qiita