↑クリックして拡大
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大

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

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

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


2021-05-14 14:21:41

WatchOSのwatchconnectivityのFiletransferの落とし穴。と、避け方。

AppleWatch 実機だと成功するんだけど、シュミレーターだと失敗するという、、、 昔作成してた時は成功してたのになーと思って調べると、どうやら昔は成功してたみたい。watchOS6以降は...

2021-05-06 14:04:37

LINEのアニメーションスタンプ制作の落とし穴、、、失敗談

ゴールデンウィークにLINEスタンプを作成してみました。 作り切って申請も通したんですが、意図したアニメーションと違う、、、、 LINEクリエーターの画面だと、アニメーションのプレビュー...

2021-05-01 18:05:35

久しぶりのAdmobをobjective-cに実装。コンパイルエラーだらけ。バーミッション不具合でエミュレータにインスコできない。

忘れないようにメモ エミュレータにアプリをインストールする際にパーミッション系のエラーがでた時、また、iphone実機にインストールする際にも権限系のエラーが出る場合。 ターゲット→ex...
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!