大小寫轉換工具(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 類名、命令列引數等並非程式語言識別符號的場合,倒也算是"各得其所"。