Swiftの文字列操作まとめ
空文字のチェック
「isEmpty」を使えばOK。空ならtrueが返ってきます。
var empty = "" var empty2 = String() //Empty. if empty.isEmpty{ println("Empty.") }else{ println("Not Empty.") } //Empty. if empty2.isEmpty{ println("Empty.") }else{ println("Not Empty.") }
文字列の連結
「+」でつなげてあげるだけ。
NSMutableString使ったり、[NSString stringWithFormat:@"%@%@", str1, str2] こんなことしなくていい!
var greeting = "Hello " let name = "Tom" greeting + name //Hello Tom
文字列を一文字ずつ取り出す
for in で取り出すと一文字ずつ取り出せます。楽ちん。
for char in "Hello!"{ println(char) }
print文内で変数を使う
バックスラッシュとカッコで囲んであげると変数が差し込めます。
日本語キーボード使ってるかたは、option + ¥マークでバックスラッシュ入力できます。
let name2 = "Tom" println("Hello \(name2).") //Hello Tom. println("1たす2は\(1+2)") //1たす2は3
文字数をカウントする
「countElements」というメソッドに文字列を渡してあげると、文字数が返ってきます(Int)。
let longMessage = "こんにちは。今日は天気がいいです。" countElements(longMessage) //17
文字列が等しいかどうか比較する
「==」で比較できます。
var str1 = "こんにちは" var str2 = "こんばんは" if str1 == str2 { println("同じ文字列") }else{ println("違う文字列") //こちら。 } str2 = "こんにちは" if str1 == str2 { println("同じ文字列") //こちら。 }else{ println("違う文字列") }
文頭/文末に特定の文字列が含まれているか確認する
「hasPrefix」を使うと文頭に含まれているかどうかをチェックできます。
「hasSuffix」を使うと文末に含まれているかどうかをチェックできます。
var greetings = ["おはよう", "こんにちは", "こんばんは"] for message in greetings { if message.hasPrefix("こん") { println(message) //こんにちは, こんばんは } if message.hasSuffix("ちは"){ println(message) //こんにちは } }
アルファベットを大文字/小文字にする
「uppercaseString」で大文字に、「lowercaseString」で小文字にできます。
let lowerStr = "hello" lowerStr.uppercaseString //HELLO let upperStr = "HELLO" upperStr.lowercaseString //hello
いろいろ便利になってますね。