大小写转换工具(kebab-case・camelCase・snake_case,免费)
免费在线一键批量互相转换 kebab-case、camelCase、PascalCase、snake_case 等主流命名规范。方便编程时改写变量名、文件名、环境变量名。
命名规则(大小写)的转换是什么
程序设计中经常需要为多个单字符串接而成的名称命名。其区隔方式有 camelCase、PascalCase、snake_case、kebab-case、CONSTANT_CASE 等流派,该用哪一种依语言与用途而定。本工具会将输入的字符串拆解为单字,一次转换为所有主要命名规则并并列显示。
单字的区隔不仅依符号,也会由大写字母的位置来判定。像 XMLParser 这类大写连续的首字母缩写,也能正确拆为 XML 与 Parser。若混有日文或符号,则只会撷取英数字的部分,因此仅输入日文时结果会是空的。
大小写转换的使用方法
-
输入想转换的字符串
以哪一种命名规则书写都无妨。
hello_world与helloWorld会以相同方式解读。 - 选择目标格式 主要命名规则的转换结果会以一览呈现。请确认想使用的格式所在的那一行。
- 复制后使用 可用各行最右端的按钮复制到剪贴板,直接贴入编辑器即可。
用好本工具的小技巧
- 像
XMLParser这样的首字母缩略词(连续大写字母)也能正确拆分为XML和Parser后再转换。 - 点击每行右侧的按钮即可立即复制到剪贴板。
- 不同语言和场景所使用的命名规范也不同:JavaScript/Java 的变量名常用 camelCase,类名用 PascalCase,Python 的变量名和函数名用 snake_case,环境变量用 CONSTANT_CASE,URL 和 CSS 类名则多用 kebab-case。
- 即使夹杂中文或其他符号,也只会提取其中的英数字单词进行转换(中文部分会被排除在转换结果之外)。
大小写转换的实用场景
把代码移植到其他语言
例如由 Python 改写为 JavaScript 时,可将 snake_case 的变数名一次改为 camelCase,避免手动输入的打字错误。
衔接 API 与代码的命名
JSON 的键为 snake_case 而代码端为 camelCase 的组合相当常见。可立即取得对应的名称。
建立环境变数名称
将设定项目的名称转换为 CONSTANT_CASE,即可直接作为环境变数使用。
决定 URL 或 CSS 类别名称
将功能名或元件名转换为 kebab-case,可用于路径或类别名称的命名。
命名规则的术语
- camelCase
- 第一个单字以小写开头,其后各单字字首大写的写法。用于 JavaScript 或 Java 的变数名。
- PascalCase
- 所有单字字首皆大写的写法。在许多语言中用于类别名或类型名。
- snake_case
- 以底线串接单字并全部小写的写法。是 Python 变数名与函式名的标准。
- kebab-case
- 以连字号串接单字的写法。多数语言无法将其用于识别字,因此用于 URL 或 CSS 类别名称。
- CONSTANT_CASE
- 全部大写并以底线串接的写法。用于常数名或环境变数名。
- 首字母缩写
- 如 XML 或 HTML 这类将各词字首排列而成的词。由于大写连续,在单字区隔的判定上处理方式各异。
常见问题
version2Update 会被拆分为 version2 和 Update。
闲话 ― 为什么各编程语言的命名规范不同
snake_case 据说源自 20 世纪 70 年代的 C 语言社区。当时的终端和编辑器环境中,大小写字母有时并不容易区分,于是用下划线分隔单词的写法反而更受欢迎,逐渐成为一种惯例。这一传统后来被 Python 和 Ruby 强烈继承了下来,至今仍是它们代码风格的标志之一。
另一方面,camelCase 据说源于 20 世纪 80 年代的 Smalltalk,以及后来 Java 的设计。Java 的设计者们选择了比下划线更紧凑、书写起来也更快的 camelCase 作为标准风格,而这一做法后来又被 JavaScript 原封不动地继承了下去,一路影响到今天的前端开发习惯。
有意思的是,在大多数编程语言中,kebab-case 反而不能用作变量名,原因很简单——- 会与减法运算符冲突,编译器无法区分二者。正因如此,它主要活跃在 URL、CSS 类名、命令行参数等并非编程语言标识符的场合,倒也算是"各得其所"。