NSBlogger

意識高いブログ

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


いろいろ便利になってますね。