Case Converter(camelCase ↔ snake_case ↔ kebab-case 相互変換)

命名規則 camelCase snake_case JavaScript Python
結論:30秒でケース記法を一括変換する
  • camelCase: JS / TS / Swift / JSON の標準 (userProfile)
  • snake_case: Python / Rust / SQL / DB カラムの標準 (user_profile)
  • kebab-case: URL パス / CSS クラスの標準 (user-profile)
  • 変換ツール: 下のコンポーネントで全記法に一発変換

1. オンライン Case 変換ツール

文字列や複数行のキー名を入力すると、各種ケース記法にブラウザ内で即座に一括変換します。

🔤 この場でケース変換する


2. 5大ケース記法の比較と主な用途

ケース記法形式主な用途・言語標準
camelCaseuserProfileDataJavaScript / TypeScript, Java, Swift, JSONキー
snake_caseuser_profile_dataPython, Rust, SQLカラム名, PostgreSQL
kebab-caseuser-profile-dataURLパス, CSSクラス名, HTML属性
PascalCaseUserProfileDataReact/Vueコンポーネント名, C#, クラス名全般
CONSTANT_CASEUSER_PROFILE_DATA定数, 環境変数 (.env)

3. プログラムでのケース自動変換コード

① JavaScript (正規表現による変換)

// snake_case -> camelCase
function toCamelCase(str) {
  return str.replace(/_([a-z])/g, (_, letter) => letter.toUpperCase());
}

// camelCase -> snake_case
function toSnakeCase(str) {
  return str.replace(/[A-Z]/g, letter => `_${letter.toLowerCase()}`);
}

console.log(toCamelCase("user_profile_data")); // "userProfileData"
console.log(toSnakeCase("userProfileData"));  // "user_profile_data"

4. 注意点(ハマりどころ)

  1. アクロニム(頭字語・略語)のパース処理
    • userIDgetHTTPResponse のように大文字が連続する単語を単純な正規表現で snake_case 化すると user_i_dget_h_t_t_p_response となり崩れます。高度なパーサーの使用を推奨します。
  2. 数字入り変数のハイフン位置
    • utf8Encodingoauth2Token など数字を含む単語のケース変換時、数字の前後にアンダースコアを入れるかどうかのチーム規約の決定が必要です。