命名风格转换
一次得到 camelCase、PascalCase、snake_case、SCREAMING_SNAKE_CASE、kebab-case 等 10 种命名风格,正确处理缩写、数字与分隔符边界。
浏览器本地运行所有计算都在你的浏览器里完成,数据不会离开本机。
全部命名风格
缩写、数字与分隔符都会按词边界重新组合,每行可单独复制。
输入文本后即可看到 10 种命名风格的结果
这个工具能做什么
- 把一段标题或句子一次转成 10 种命名风格,复制哪个用哪个,不用为每个风格单独找工具。
- 跨语言改代码时统一命名:Java 的 `XMLHttpRequest` 要改成 Python 的 `xml_http_request`,缩写和数字边界都按规则处理。
- 把接口字段名从 snake_case 批量改成 camelCase 或 kebab-case 时,先拿一个样本验证切词规则对不对。
- 生成常量名:`user_id_2` → `USER_ID_2`,或者按标题式生成 `User Id 2` 用作展示文案。
示例
输入
XMLHttpRequest user_id_2
输出
camelCase: xmlHttpRequestUserId2 PascalCase: XmlHttpRequestUserId2 snake_case: xml_http_request_user_id_2 SCREAMING_SNAKE_CASE: XML_HTTP_REQUEST_USER_ID_2 kebab-case: xml-http-request-user-id-2 dot.case: xml.http.request.user.id.2 Title Case: Xml Http Request User Id 2 句子式: Xml http request user id 2 空格分隔: xml http request user id 2 CONSTANT_CASE: XML_HTTP_REQUEST_USER_ID_2
这是真实输出。注意缩写被拆成 Xml + Http + Request,数字也被独立成词(id + 2),所以 camelCase 里是 `UserId2` 而不是 `UserId2Id` 之类的拼接。
常见问题
缩写会被怎么处理?
会按大小写边界拆开:`XMLHttpRequest` → XML + Http + Request,`HTTPServer` → HTTP + Server。所以 PascalCase 得到的是 `XmlHttpRequest`,首字母只保留一个。这个规则和多数代码格式化工具一致,但和你手写的 `XMLHttpRequest` 不同——如果一定要保留全大写缩写,需要手工调整。
数字为什么也被拆开?
因为 `user_id_2` 和 `user2id` 的语义边界不同。工具在字母与数字交界处切词,所以 `user_id_2` 得到 user、id、2 三个词,snake_case 是 `user_id_2`、dot.case 是 `user.id.2`。如果数字属于词的一部分(如 `utf8`、`sha256`),它会和前面的字母分开成 utf + 8,需要手工合回去。
中文和 Emoji 会怎样?
连续的汉字、平假名、片假名会被当作一个词整体保留,不会被大小写转换影响;Emoji、标点和其他非字母数字字符一律当分隔符丢掉。所以「用户 登录」会得到两个中文词,snake_case 里用下划线连接。
句子式和 Title Case 有什么区别?
Title Case 把每个词首字母大写(`User Id 2`),句子式只有第一个词大写、其余小写(`User id 2`)。两者都用空格连接,适合生成展示文案或提交信息标题。
转换会上传内容吗?
不会。10 种风格全部在浏览器里即时算出,页面不发任何网络请求,输入也不会被记录。
关键词:case converter命名风格转换camelCase驼峰命名PascalCasesnake_case下划线命名kebab-case短横线命名CONSTANT_CASE大小写转换