如果這個工具幫到了你,可以請作者喝杯咖啡 ☕
在下劃線命名(snake_case)與駝峰命名(camelCase)之間快速互轉,支援批次處理和常見邊界情況。
前後端聯調時的欄位名轉換
後端介面通常返回下劃線分隔的 JSON 欄位,比如 user_id、created_at。前端 JavaScript/TypeScript 習慣使用駝峰 userID、createdAt。如果每次都要手動改幾十個欄位,不僅慢還容易漏。
在我們工具裡,你只需把整段 JSON 或欄位列表複製到輸入框,選擇「下劃線轉駝峰」,右側結果區立刻給出駝峰版,直接替換即可。
資料庫列名轉實體類屬性
資料庫列名常用下劃線,例如 order_status,而 Java 實體類遵循駝峰規範 orderStatus。新建實體時拿著 DDL 指令碼,粘過來,一鍵生成所有屬性名,不用在 IDE 裡一個個重構。
配置檔案或環境變數命名統一
有的人配置檔案用 database_url,有的地方用 DATABASE_URL 全大寫加下劃線,還有的用 databaseUrl。你將下劃線版貼進來,選擇「下劃線轉駝峰」,再手動處理一下大小寫,就能快速統一團隊風格。
下劃線命名(snake_case)是全小寫單詞之間用下劃線 _ 連線,如 user_name、last_login_time。它源自 C 語言傳統,在 Python、Ruby、資料庫 Schema 中非常普遍。
駝峰命名(camelCase)是首單詞小寫,後續每個單詞首字母大寫,連在一起,如 userName、lastLoginTime。Java、JavaScript、Swift 等語言標準庫和框架幾乎都用駝峰。PascalCase 是大駝峰,首字母也大寫,常用於類名。
我們工具處理的是小駝峰(camelCase)和下劃線之間的互轉,覆蓋了絕大多數 API 和變數使用場景。
你在頁面頂部會看到兩個主要區域:左側是輸入區,右側是結果區,中間有轉換方向的切換按鈕。
第一步:在左側「輸入文字」大文字框裡,貼上需要轉換的字串。可以是一行一個詞,也可以是多行,甚至可以包含數字和特殊字元。
第二步: strong>確認轉換方向。文字框上方有兩個選項:「下劃線轉駝峰」和「駝峰轉下劃線」。根據你的原始格式,點一下對應的選項,選中後選項會高亮。
第三步:點選藍色的「開始轉換」按鈕。轉換器會按照選定方向處理每一行,瞬間在右側結果區輸出轉換後的文字。
第四步:檢視右側結果。如果某行不符合目標格式(比如下劃線轉駝峰時發現輸入裡沒有下劃線),結果會保持原樣,並在下方提示中標註跳過的行。你還可以點選結果區右上角的「複製」圖示,一鍵複製全部結果。
批次技巧:直接把整段 JSON 或一組變數名多行貼上進來,轉換器會對每一行獨立轉換,保持空行和空白,不會打亂你的排版。
我們拿一個真實的使用者介面 JSON 片段來演示。
假設輸入如下(下劃線格式):
user_id first_name last_login_time profile_image_url
在「輸入文字」框貼上上述內容,方向選擇「下劃線轉駝峰」,點選「開始轉換」。右側結果區會顯示:
userId firstName lastLoginTime profileImageUrl
我們逐行對照一下:user_id 轉成 userId,規則是去掉下劃線,把下劃線後的第一個字母大寫。first_name → firstName,last_login_time → lastLoginTime,profile_image_url → profileImageUrl。注意最後一個詞 url 轉成 Url,保持縮寫習慣。
反過來,如果輸入駝峰版:
userId firstName lastLoginTime profileImageUrl
選擇「駝峰轉下劃線」,點選轉換,輸出就是:
user_id first_name last_login_time profile_image_url
每次轉換完,你都可以點選複製圖示直接帶走結果。
連續下劃線的情況
輸入 user__name(兩個連續下劃線),選擇下劃線轉駝峰,結果會是 userName,連續下劃線被視為一個分隔,不會產生多餘大寫字母。
開頭或結尾帶下劃線
輸入 _private_key_,轉換後得到 privateKey。首尾下劃線會被忽略,避免出現不合法識別符號。同理,駝峰轉下劃線時,如果輸入 _privateKey(前端不太可能這樣寫),轉換器會先去掉開頭下劃線再處理,結果為 private_key。
數字和混合內容
輸入 addr_line1,轉駝峰得 addrLine1,數字保留原位。如果輸入 homeAddress2 轉下劃線,結果為 home_address2,數字後的轉換規則不變。遇到純數字或純符號行(如 12345),轉換後保持原樣。
全大寫字母
輸入 API_KEY(全大寫),選擇下劃線轉駝峰,預設輸出 apiKey,全大寫會被轉為小寫開頭駝峰。如果你想要保留 API 大寫,可以先在輸入框裏手動把首字母改為小寫 aPI_KEY,轉換後得到 aPIKey,但一般規範建議統一小寫駝峰 apiKey。
把駝峰轉下劃線用反了方向
很多人把下劃線欄位粘進去,卻誤選了「駝峰轉下劃線」,結果出來還是下劃線,以為工具壞了。其實只是方向不對,檢查一下選項就好。
混淆大駝峰(PascalCase)和小駝峰
我們的工具處理的是小駝峰,即首字母小寫的變數名。類名如 UserProfile 是大駝峰,如果直接丟進來轉下劃線,會得到 user_profile,這是正確的。但如果你預期得到 User_Profile,就不對了。需要先用其他方式處理首字母大小寫。
整段 JSON 轉換後直接替換,忘記驗證
很多人把整個 JSON 物件貼上轉換,把 "user_id": 1 變成了 "userId": 1,但 JSON 鍵名帶了雙引號,轉換器會將引號當普通字元保留,所以轉換結果仍然是合法 JSON。但如果你複製時不小心多選了逗號或括號,會出現語法錯誤。建議只轉欄位名部分,再拼回完整 JSON。
忽略編碼中的字首字尾下劃線
像 __init__.py 中的模組名,轉換後會變成 init.py,丟失了下劃線字首。這些特殊約定(如 Python 的私有變數雙下劃線)需要手動恢復。工具預設去掉首尾下劃線,是為通用變數名考慮的。
本工具基於純字串規則轉換,不解析任何程式語言語法。它假設輸入符合基本識別符號規範:只包含字母、數字和下劃線,且不處理關鍵字衝突。轉換結果請務必在目標語言環境中驗證,確保沒有與保留字衝突或風格不符。
對於部分語言中的特殊命名約定(如 C# 的 @class 字首,或 Go 中大寫首字母表示匯出),本工具不感知。批次轉換大文字(超過 50 萬行)時,瀏覽器記憶體限制可能導致卡頓,建議分批次進行。
輸出結果僅供參考,尤其在自動化程式碼生成或重構場景下,應結合 linter 和程式碼審查使用。
下劃線轉駝峰後,首字母大寫怎麼處理?
預設輸出小駝峰,首字母小寫。如果你需要大駝峰(PascalCase),可以將結果貼上後手動把第一個字母改為大寫,或者在轉換前在輸入前加一個任意字母然後刪除,但本工具不提供大小寫調整開關。後續版本會考慮加入。
能處理全大寫的 SNAKE_CASE 嗎?
可以。輸入 MAX_RETRY_COUNT 選擇下劃線轉駝峰,會輸出 maxRetryCount,自動轉換為小寫駝峰。反之,駝峰轉下劃線不會自動產生全大寫,輸出的是小寫下劃線 max_retry_count。如果你需要全大寫常量格式,可藉助其他文字工具轉為大寫。
轉換結果能直接用在程式碼裡嗎?
通常可以,但需要注意字符集。本工具只使用 ASCII 字母和數字,不引入 Unicode 字元。如果你程式碼裡允許 utf-8 識別符號,結果沒問題。不過有些語言不允許數字開頭,如果轉換結果以數字開頭(例如輸入 2nd_value 轉成 2ndValue),作為變數名是非法的,需手動調整。
這個工具和 IDE 的重構重新命名有什麼區別?
IDE 的重構功能會同時修改所有引用,並檢查作用域。本工具只是字串格式互轉,不會修改程式碼結構,適合在複製欄位列表、生成實體類、臨時批次替換時使用,速度快、不依賴特定編輯器。
可以反過來把帶橫線的命名(kebab-case)轉成駝峰嗎?
目前只支援下劃線和駝峰互轉。對於橫線分隔符(如 background-color),你可以先用文字編輯器的查詢替換把 - 替換為 _,再使用本工具。
現在你可以在上方輸入區試試自己的欄位名,看看轉換效果,然後一鍵複製走。