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が書く文字数が少ないので嬉しいですが、メソッドの名称を短くしてほしいです。

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

SQLiteを使いたい。ラッパーを検証してみる。

SQLiteを使いたい。Objective-Cの時はMagical RecordでCoreDataを利用して問題なく使えたのですが、 今回はSQLite+Swiftでトライしてみたいと思います。ざっと調査すると、SwiftでSQLiteを使うのは、FMDB, SwiftData, SQLite.swiftが あるみたいです。この三つのラッパーから好みのものを選んでみるのが目標です。

AppleWatchでNotificationを受け取る。バイブでブルブル通知する。

どうやら現状はAppleWatchのバイブレーションパターンをカスタマイズできないようなのですが、Notificationを受け取る際に ブルブルする状態のようです。つきましては、NotificationをApp側で設定、AppleWatch側で受け取ってブルブルするサンプルを記載していきます。

willsetとdidsetでプロパティを監視。意味あるのか???

クラスのプロパティにはWillsetとdidsetという監視用の関数があると聞いたのですが、用途は分かるにしても メリットとしてはどういうものなのかなと、うーん、と考えていました。調べていると海外のサイトでは同じように疑問にもつ質問があがっていました。 getとsetで同じことができるのでは?との私と同じスタンスです。解決されていましたので、順に説明していきます。
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!