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大ケース記法の比較と主な用途
| ケース記法 | 形式 | 主な用途・言語標準 |
|---|---|---|
| camelCase | userProfileData | JavaScript / TypeScript, Java, Swift, JSONキー |
| snake_case | user_profile_data | Python, Rust, SQLカラム名, PostgreSQL |
| kebab-case | user-profile-data | URLパス, CSSクラス名, HTML属性 |
| PascalCase | UserProfileData | React/Vueコンポーネント名, C#, クラス名全般 |
| CONSTANT_CASE | USER_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. 注意点(ハマりどころ)
- アクロニム(頭字語・略語)のパース処理
userIDやgetHTTPResponseのように大文字が連続する単語を単純な正規表現でsnake_case化するとuser_i_dやget_h_t_t_p_responseとなり崩れます。高度なパーサーの使用を推奨します。
- 数字入り変数のハイフン位置
utf8Encodingやoauth2Tokenなど数字を含む単語のケース変換時、数字の前後にアンダースコアを入れるかどうかのチーム規約の決定が必要です。