各単語の最初の文字を大文字にする
テキスト文字列のすべての単語の最初の文字を大文字にする方法を学びます。単純な単語大文字化と小さな単語の例外を含む適切なTitle Caseの違いを解説します。
Writing Cases
詳細な説明
各単語の最初の文字を大文字にする
単語の大文字化(「Start Case」とも呼ばれる)は、文中の単語の役割に関係なく、すべての単語の最初の文字を大文字に変換します。Title Caseとは異なり、小さな単語の例外を適用しません。
基本的な変換
入力: the quick brown fox
出力: The Quick Brown Fox
入力: hello-world example
出力: Hello-World Example
Capitalize Words vs. Title Case
Capitalize Words: The Quick Brown Fox Jumps Over The Lazy Dog
Title Case: The Quick Brown Fox Jumps over the Lazy Dog
Capitalize Wordsは冠詞("The")、前置詞("Over")、接続詞を含むすべての単語を大文字にします。Title Caseは文法的な例外を適用します。
仕組み
function capitalizeWords(text) {
return text.replace(/\b\w/g, (char) => char.toUpperCase());
}
区切り文字の処理
堅牢な実装は複数のタイプの単語境界の後で大文字にします:
"hello world" → "Hello World" (スペース)
"hello-world" → "Hello-World" (ハイフン)
"hello.world" → "Hello.World" (ドット)
"hello_world" → "Hello_World" (アンダースコア)
一般的な用途
- フォームの表示名:
"john doe"→"John Doe" - 住所のフォーマット:
"123 main street"→"123 Main Street" - CSVデータのクリーンアップ: 不統一な大文字のデータを正規化
- 製品名:
"wireless bluetooth headphones"→"Wireless Bluetooth Headphones"
エッジケース
- 空文字列は空文字列を返します。
- 単一文字:
"a"→"A"。 - 複数のスペース: 保持されるべき(空白を折りたたまない)。
- 最初の文字が数字:
"2nd place"→"2nd Place"(数字の単語はスキップ)。
ユースケース
各単語の大文字化は、ユーザープロフィールの表示名のフォーマット、フォームの住所フィールドの正規化、CSV/スプレッドシートデータのクリーンアップ、レポートヘッダーの生成、パンくずナビゲーションラベルのフォーマット、Eコマースカタログの製品名の表示に便利です。