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

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

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-06 14:04:37

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

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

2021-05-01 18:05:35

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

忘れないようにメモ エミュレータにアプリをインストールする際にパーミッション系のエラーがでた時、また、iphone実機にインストールする際にも権限系のエラーが出る場合。 ターゲット→ex...

2021-04-26 18:06:43

めちゃめちゃ久しぶりにFlashの恩恵を受けた話。LINEスタンプ制作。APNGって何なの。

私は以前今は亡きFlashをつかった仕事。Flash デベロッパーとして仕事してる時期がありました。 ただ、Flashは下火になりましたので10年以上遠ざかっていて、恩恵にも触れなかったのです...
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!