大小写转换与 slug 生成
将文本转换为 camelCase、snake_case、kebab-case、Title Case 等,或把标题变成带重音处理的 URL slug。
代码示例
可直接复制到你自己的项目中。每个示例只使用该语言的标准库,因此无需安装任何东西。
const text = 'Héllo wereld, één voorbeeld!'
const slug = text
.normalize('NFD')
.replace(/\p{M}/gu, '')
.toLowerCase()
.replace(/[^a-z0-9]+/g, '-')
.replace(/^-+|-+$/g, '')
console.log(slug)功能
在不同写法之间转换文本:camelCase、PascalCase、snake_case、kebab-case、CONSTANT_CASE、Title Case、句子格式、小写和大写。也可以把标题变成去除重音、并将 ß、ø 等字母写成 ASCII 的 URL slug。
使用方法
- 每行输入或粘贴一项文本,或拖入文本文件。
- 选择样式。对于 URL slug,可选择元音变音的拼法(德语把 ä 写成 ae,北欧把 å 写成 aa)以及连接单词的分隔符。
- 复制或下载结果。关闭逐行单独转换可把整段文本当作一个整体。
示例
同样的单词,不同的样式:
getUserById 在 snake_case 中是 get_user_by_id,在 CONSTANT_CASE 中是 GET_USER_BY_ID,在 kebab-case 中是 get-user-by-id。Crème brûlée & Straße 变成 slug creme-brulee-strasse。
须知
- 单词在空格、标点、下划线、连字符以及小写与大写字母之间被识别。
HTTPServer拆成HTTP和Server。 - slug 只保留小写字母和数字。日语等拉丁字母以外的字符会被丢弃。
- 小写和大写按原样改变文本,保留空格和标点。
- 大小写规则遵循 Unicode 标准,不针对某种语言;土耳其语带点和不带点的 i 不会被特殊处理。
如何找出单词?
文本会在空格、标点、下划线和连字符处,以及小写字母遇到大写字母的地方拆成单词:userProfile 变成 user 和 Profile。像 HTTPServer 这样位于单词前的一串大写字母会拆成 HTTP 和 Server,数字则单独算作一个单词。
常见问题
URL slug 是什么样的?
slug 是网址中便于阅读的部分:用连字符连接的小写字母和数字,例如 hello-world。重音会被去除(é 变成 e),ß 和 ø 等字母会得到 ASCII 形式,因此结果在任何 URL 中都安全。
如何处理德语和北欧字母?
默认只是去掉重音,所以 ü 变成 u。选择德语会把 ä、ö、ü 写成 ae、oe、ue;选择北欧会把 å 写成 aa、ø 写成 oe,这是这些语言在没有该字母时的拼法。
这个工具会把我的文本发送到别处吗?
不会。一切都在你的浏览器中进行。你输入的内容不会发送到我们的服务器。