言語
日本語
English

Caution

お使いのブラウザはJavaScriptが無効になっております。
当サイトでは検索などの処理にJavaScriptを使用しています。
より快適にご利用頂くため、JavaScriptを有効にしたうえで当サイトを閲覧することをお勧めいたします。

Swift辞典

  1. トップページ
  2. Swift辞典
  3. 文字列.uppercased() / lowercased() / capitalized

文字列.uppercased() / lowercased() / capitalized

Swiftの文字列は『uppercased()』で大文字、『lowercased()』で小文字に変換できます。『capitalized』は各単語の先頭を大文字にします。

構文

// 大文字変換
文字列.uppercased()

// 小文字変換
文字列.lowercased()

// 各単語の先頭を大文字に
文字列.capitalized

// ロケールを考慮した変換
文字列.localizedUppercase
文字列.localizedLowercase
文字列.localizedCapitalized

メソッド・プロパティ一覧

メソッド / プロパティ概要
文字列.uppercased()文字列全体を大文字に変換した新しい文字列を返します。
文字列.lowercased()文字列全体を小文字に変換した新しい文字列を返します。
文字列.capitalized各単語の先頭を大文字、残りを小文字にした文字列を返します。
文字列.localizedUppercase現在のロケールに基づいて大文字変換します。
文字列.localizedLowercase現在のロケールに基づいて小文字変換します。
文字列.localizedCapitalized現在のロケールに基づいて先頭文字を大文字にします。
文字列.uppercased(with: locale)指定ロケールで大文字変換します。

サンプルコード

// 大文字・小文字変換
let text = "Hello, Swift World!"
print(text.uppercased())  // HELLO, SWIFT WORLD!
print(text.lowercased())  // hello, swift world!
print(text.capitalized)   // Hello, Swift World!

// 実際のユースケース:大文字小文字を無視した比較
let input = "swift"
let keyword = "Swift"
if input.lowercased() == keyword.lowercased() {
    print("一致しました(大文字小文字無視)")
}

// ファイル拡張子の正規化
let filename = "Photo.JPG"
let ext = (filename as NSString).pathExtension.lowercased()
if ext == "jpg" || ext == "jpeg" {
    print("JPEG画像: \(filename)")
}

// ユーザー入力の正規化
let userInput = "  TOKYO  "
let normalized = userInput.trimmingCharacters(in: .whitespaces).lowercased()
print(normalized)  // tokyo

// タイトルケースへの変換
let title = "the quick brown fox"
print(title.capitalized)  // The Quick Brown Fox

// ロケールを考慮した変換
import Foundation
let turkishText = "istanbul"
print(turkishText.localizedUppercase)  // ロケールによって異なる(tr_TR では İSTANBUL)

概要

『uppercased()』と『lowercased()』はUnicodeを完全にサポートします。ロケールに依存しない変換なので多くの場面で安全に使えます。

大文字小文字を無視した比較には両辺を『lowercased()』してから比較するか、『localizedStandardContains』を使います。トルコ語など一部の言語では大文字小文字の変換ルールが異なります(例:i → İ)。多言語対応が必要な場合は『localizedUppercase』を使用してください。

文字列の置換・トリムについては文字列.replacingOccurrences() / trimmingCharacters()を参照してください。

記事の間違いや著作権の侵害等ございましたらお手数ですがまでご連絡頂ければ幸いです。