Swift転職なら=>【LevTech】
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大

頭痛が減ったので共有です!

rebuild.fmを応援しています!

HOME > 文字列分割に関して

文字列分割に関して(phpのsplit的な)

仕事ではPHPを利用しているのでSwiftでsplit的な文字列を分割する際にいつも迷っていましたので記事にしました。 もう数多く出回っている処理ですが、改めて整理として記載します。ただ、どうやらSwift 2 からsplitが拡張されて新しい分割方法もあるようなので、 それも確認してみます。

参考:【Swift】文字列→特定の文字で区切って配列にする方法(RubyやJSのsplit的な)。
参考:Swiftで文字列の分割と連結 (split & join)
参考:[Swift] 文字列の分割
参考:Swift: Split a String into an array

やってみた

よく使うsplitに近い方法(componentsSeparatedByString)


var hoge: String = "Swift-Salaryman";
var hogeArr = hoge.componentsSeparatedByString("-");
print (hogeArr[0])// Swift
print (hogeArr[1])// Salaryman

サンプル画像



こんな方法も(componentsSeparatedByCharactersInSet)



let separators = NSCharacterSet(charactersInString: "-")
var hoge: String = "Swift-Salaryman";
var hogeArr = hoge.componentsSeparatedByCharactersInSet(separators)
print (hogeArr[0])// Swift
print (hogeArr[1])// Salaryman

サンプル画像



Swift 2+XCode7.0ならこんな方法も



let hoge = "Swift-Salaryman"
let hogeArr = hoge.characters.split{$0 == "-"}.map(String.init)
print (hogeArr[0])// Swift
print (hogeArr[1])// Salaryman

サンプル画像

まとめ

一番楽なのはcomponentsSeparatedByStringが書く文字数が少ないので嬉しいですが、メソッドの名称を短くしてほしいです。

↓こんな記事もありますよ!

関数引数の参照渡し Inout

Swiftで参照だけを渡す(呼び出し元の変数の値を変更する)にはどうしたらよいのかな〜と調査していると、関数引数に参照渡しする方法でindexinoutという言葉があることを知りました。紹介いたします

UIPageControlでペラペラめくるチュートリアル画面を作成する

UIPageControllでiOSアプリ初回起動時にのみ表示される, ペラペラめくるチュートリアル機能の説明です。プロジェクト作成時にPage-Basedを選ぶと作成することはできるのですが、既存のアプリに追加するには気がので、 既に作成したアプリに初回一回だけ表示するチュートリアルを解説します

AppleWatchアプリの申請

AppleWatchアプリの申請が4月1日から始まりましたので、少しトライしてみました。ハマった箇所を共有です。 アプリをArchiveしてValidateしてから2パターンの不具合、あとはアップロードには成功したのですが、Itunesに反映されなかった 現象を共有です
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!