英語の大文字・小文字変換:タイトルケース、camelCase、snake_case
英文を貼り付けてクリックするだけで、全大文字、全小文字、タイトルケース、文頭大文字、そしてプログラミング向けの camelCase・snake_case・kebab-case に変換できます。命名モードは単語を分割してからつなぎ直します。空白・アンダースコア・ハイフンが区切りになり、camelCase と snake_case はキャメル境界も分割します。
どんなときに使うか
よくあるのは命名の不統一です。データベースの出力が user_first_name、API は userFirstName、URL は user-first-name を期待する、という状況で、数十個のフィールドを手で直すと必ず漏れが出ます。
Excel や古い CMS から出力した見出しが全大文字で、タイトルケースに直して戻したい場合や、普通の文をバナー・表見出し・ファイル名用に全大文字にしたい場合にも使います。
- フィールド名を camelCase や snake_case に統一する
- 見出しを kebab-case にして URL スラッグやファイル名にする
- 表計算から取り込んだ全大文字の見出し列を整える
- API パラメータ、クエリ文字列、CSS クラス名の表記を揃える
各モードのルールと注意点
全大文字・全小文字・文頭大文字は文字を変えるだけで、単語の順序は変えません。タイトルケースは空白で区切られた各単語の先頭を大文字、残りを小文字にしますが、品詞は判定しません。そのため the や of、and も大文字になります。英語の見出し慣例では冠詞や短い前置詞は小文字にするため、変換後に手で直します。iPhone は Iphone、eBay は Ebay になる点にも注意してください。
3 つの命名モードは単語を分割してからつなぎ直し、結合前に全体を小文字化します。そのため HTTP_SERVER_NAME は HTTPServerName ではなく httpServerName になります。漢字に大文字・小文字はないのでそのまま残り、記号や数字は分割点にならないため v1.2.3 は壊れません。構文を解釈しない純粋な文字列置換です。
- camelCase は JavaScript の変数や JSON のフィールドに
- snake_case はデータベースの列名や Python の識別子に
- kebab-case は URL、CSS クラス、ファイル名に
- 略語やブランド名は変換後に手で修正する
使ってはいけない場面
コードの編集には使わないでください。範囲選択して変換すると、文字列リテラル、コメント、import パスまで書き換わります。構文を解析しないため、変数名と引用符の中の文章を区別できません。識別子の変更は IDE のリファクタリング機能を使ってください。
ロケール固有の規則にも対応していません。ドイツ語の ß は SS になり、トルコ語の i/İ には独自の規則がありますが、ここでは JavaScript の既定の変換を使います。正確さが求められる場合は Intl や ICU を利用してください。
- 識別子の改名は IDE のリネーム機能で
- ロケール依存の変換は Intl / ICU で
- 見出しの一括変換は CSV に書き出して処理し、元の列に戻す
よくある質問
camelCase と PascalCase は何が違いますか?
camelCase は先頭を小文字にし、続く単語の先頭を大文字にします(userName)。PascalCase(UpperCamelCase)は先頭を含むすべての単語を大文字にします(UserName)。クラス名やコンポーネント名は PascalCase、変数やフィールドは camelCase が一般的です。このツールは camelCase を出力するので、PascalCase が必要なら先頭だけ大文字にしてください。
タイトルケースで the や of も大文字になるのはなぜですか?
空白で区切られた各単語の先頭を大文字にし、残りを小文字にするだけで、品詞を判定していないためです。英語の見出しでは冠詞・等位接続詞・短い前置詞を小文字にする慣例があり、先頭と末尾を除いて手直しが必要です。小さい単語だけ確認すれば数分で済みます。
snake_case にしたら大文字の略語が消えたのはなぜですか?
命名モードでは結合前に全体を小文字化するため、HTTP_SERVER_NAME は http_server_name になります。入力の大文字・小文字が乱れていても整った結果にするための仕様です。略語を残したい場合は変換後に手で直すか、略語辞書を持つ命名ライブラリを使ってください。
関連ツール:Case Converter