驼峰下划线互转工具

已输入 0 行内容
已输出 0 行内容

转换规则说明

驼峰转下划线

  • • userName → user_name
  • • MyVariable → my_variable
  • • HTTPRequest → http_request

下划线转驼峰

  • • user_name → userName
  • • my_variable_name → myVariableName
  • • http_request → httpRequest

驼峰下划线转换 - 编程命名风格一键互转工具

写代码时需要在camelCase、snake_case、PascalCase之间切换?驼峰下划线转换工具帮你一键在各种编程命名风格之间互转,支持驼峰式、下划线式、短横线式、常量式等多种风格,还能批量处理。

无论是代码重构、跨语言开发还是统一命名规范,都能帮你快速完成命名风格转换。

不同的编程语言和框架有不同的命名规范,掌握这些规范并能在它们之间快速切换,是开发者的基本功。

五种编程命名风格详解

camelCase 小驼峰

示例:userName, getData, httpResponse。第一个单词首字母小写,后续单词首字母大写。JavaScript、Java等语言中变量和函数的常用命名方式。

PascalCase 大驼峰

示例:UserName, GetData, HttpResponse。每个单词首字母都大写。C#、TypeScript等语言中类名和组件名的常用命名方式。

snake_case 下划线式

示例:user_name, get_data, http_response。单词之间用下划线连接,全部小写。Python、Ruby等语言中的标准命名方式。

CONSTANT_CASE 常量式

示例:USER_NAME, GET_DATA, HTTP_RESPONSE。单词之间用下划线连接,全部大写。用于定义常量和配置项。

kebab-case 短横线式

示例:user-name, get-data, http-response。单词之间用短横线连接,全部小写。CSS类名、URL路径和HTML属性的常用命名方式。

各语言推荐命名风格

JavaScript/TypeScript

变量和函数用camelCase,类和接口用PascalCase,常量用CONSTANT_CASE。

Python

变量和函数用snake_case,类用PascalCase,常量用CONSTANT_CASE。

CSS/HTML

类名用kebab-case,自定义属性用kebab-case,ID用camelCase或kebab-case。

如何使用驼峰下划线转换工具

  1. 输入文本:在输入框中输入需要转换的变量名或标识符,支持批量输入(每行一个)。
  2. 选择目标风格:从camelCase、PascalCase、snake_case、CONSTANT_CASE、kebab-case中选择。
  3. 执行转换:工具会自动识别输入的命名风格并转换为目标风格。
  4. 复制结果:点击"复制"按钮将转换结果复制到剪贴板。

典型应用场景

  • 跨语言开发:在JavaScript和Python之间切换时,快速转换变量命名风格。
  • 代码重构:统一项目中的命名风格,将混用的命名方式统一为一种。
  • 数据库映射:将数据库的snake_case字段名转换为代码中的camelCase属性名。
  • API对接:不同API使用不同命名风格时,快速转换字段名。

转换原理

命名风格转换的核心是分词和重组。首先将输入的标识符拆分为单词序列,然后按照目标风格的规则重新组合。

分词策略包括:识别大写字母作为单词边界(camelCase/PascalCase)、识别下划线作为分隔符(snake_case)、识别短横线作为分隔符(kebab-case)。

对于连续大写字母(如HTTPResponse),工具会智能识别缩写词,将其作为一个单词处理,转换为http_response而非h_t_t_p_response。

常见问题

转换结果不准确怎么办?

对于缩写词(如XML、HTTP、URL),工具可能无法完美识别。建议对转换结果进行人工核对,特别是包含多个连续大写字母的标识符。

支持中文变量名吗?

支持中文变量名的转换,但中文没有大小写之分,转换效果有限。建议在编程中使用英文变量名。

可以批量转换吗?

可以。每行输入一个标识符,工具会逐行转换,结果保持原始的行结构。适合批量处理代码中的变量名。

转换会改变原始数据吗?

不会。工具只显示转换结果,原始输入保持不变。你可以反复尝试不同的目标风格,选择最满意的结果。

数字会被如何处理?

数字被视为单词的一部分,不会被拆分。例如"user2Name"会被拆分为["user2", "Name"],转换为snake_case时为"user2_name"。

输入内容会被保存吗?

不会。所有转换过程在浏览器本地完成,输入内容不会被保存或上传到任何服务器。

统一的命名风格是代码可读性的基础。用好转换工具,让你的代码风格始终如一。