Snake_case 轉換器

將任何短語轉換為snake_case——全部小寫,單字由下劃線連接。 Python、Ruby 和大多數 SQL 列的預設識別碼樣式。

範例: User Profile Background Color → user_profile_background_color

Snake_case 是一種命名約定,其中單字以小寫形式書寫並用底線連接。它是 Python(根據 PEP 8)和 Ruby 的官方識別符樣式,並且是 PostgreSQL、MySQL 和 SQLite 中最常見的 SQL 列名稱樣式。

相比於 camelCase、snake_case 更容易一目瞭然,因為下劃線充當視覺分隔符,但打字速度稍慢,因為每個單字中斷都需要專門的擊鍵。語言和生態系統會選擇其中一個並堅持下去以保持一致性。

其中snake_case是房屋風格

Python 變數和函數名稱

根據 PEP 8,每個 Python 變數、函數參數和方法名稱都應該是 Snake_case: user_id, compute_tax_rate, read_from_file。類別名稱是 PascalCase;常數是 CONSTANT_CASE.

Ruby 和 Rails

Ruby 方法、變數和Rails 模型屬性都是snake_case。資料庫列會自動轉換為 ActiveRecord 中的 Snake_case 屬性名稱,因此任何偏差都會破壞魔法。

SQL 列名稱

PostgreSQL、MySQL 和 SQLite 對於不帶引號的識別碼都是不區分大小寫的,但 Snake_case 是事實上的標準。 created_at, user_email, order_total.

檔案名稱和檔案名稱

Snake_case 對於需要下劃線而不是破折號的檔案名稱和 URL 段很友善。 (對於 URL slug, kebab-case 更常見 - Google 將連字符視為 URL 中的單字分隔符,而將下劃線視為連接器。 )

環境變數

雖然環境變數通常是 CONSTANT_CASE,下劃線分隔符相同。 Snake_case 與有效的環境變數名稱相差 1 toUpperCase() 。

空格和標點符號如何變成底線

Snake_case 轉換器應用確定性管道。首先,它透過偵測邊界將輸入字串拆分為單字:空格、連字號、底線和大小寫轉換(例如,從小寫到大寫)。每個邊界都被視為單字分隔符號。然後每個單字都是小寫的。最後,單字用一條底線連接起來(_).

縮寫詞(例如, HTTP) 在拆分過程中被視為單個單詞,因為它們完全由大寫字母組成;小寫後,它們變成 http。所有格(例如, user's) 失去撇號並且 s 在分詞期間,因為撇號充當非字母數字分隔符號。連字符的單字(例如, well-known) 在連字符處自然分開。演算法不會保留單字邊界偵測以外的原始字母大小寫。

如何將片語轉換為snake_case

  1. 將您的短語輸入或貼上到輸入文字區域。
  2. 點選“轉換為snake_case”按鈕。
  3. 從輸出框中複製生成的全小寫、下劃線連接的字符串。
  4. 直接在程式碼、資料庫列或檔案名稱中使用輸出。

前導數字、重複底線和 Unicode

縮寫
像「HTTP Error」這樣的輸入會變成「http_error」——全部小寫,對首字母縮寫沒有特殊處理。
連字符的單字
“well-known” 變成“well_known” — 連字符被視為分隔符號。
佔有慾
「user's input」變成「user_input」-撇號和「s」被刪除。

在 linter 中倖存的 Snake_case 名稱

  • 使用 Snake_case 作為 Python 變數名稱以符合 PEP 8 — 它提高了團隊之間的可讀性和一致性。
  • 在 Ruby 中,snake_case 是方法名稱和符號的標準;堅持使用慣用程式碼。
  • 對於 SQL 列名稱,則偏好蛇形命名(例如“user_id”)——大多數資料庫無論如何都將大寫列名稱視為不區分大小寫。
  • 要在編輯器中快速將camelCase變數轉換為snake_case,請選擇它並貼上到此工具中 - 無需手動插入下劃線。

Python、Rust 和 SQL 欄位名稱中的 Snake_case

雖然您可以使用命令列工具或文字處理器獲得相同的結果,但該轉換器是專門為速度和準確性而建造的。

這個工具sed命令單字“更改大小寫”
辦案將所有字元轉換為小寫。需要透過 y 或 tr 明確小寫。僅提供大寫、小寫、標題大小寫。
分詞偵測空格、連字號、底線和大小寫轉換。必須手動定義分隔符號(例如 sed 's/[ _-]/-/g')。不分詞;僅更改整個選擇的大小寫。
輸出格式直接產生帶有下劃線的snake_case。需要額外的管道來用底線替換空格。無法原生生成snake_case;需手動更換。

下劃線約定如何傳播

隨著 20 世紀 90 年代和 2000 年代初 Python 和 Ruby 的興起,snake_case 命名約定變得突出。 Python 的 PEP 8 (2001) 正式建議使用 Snake_case 作為變數和函數名,而 Ruby 社羣則採用它作為方法和符號。它的根源可以追溯到 C 的下劃線分隔標識符(例如, MAX_LENGTH),但在動態類型語言中,小寫變體成為了駝峯命名法的更具可讀性的替代方案。 「snake_case」一詞本身在 2000 年代初期被 Ruby 愛好者所流行。

蛇案問題

Snake_Case 與 CamelCase — 我該使用哪一個?

這取決於您的語言和團隊慣例。 Python、Ruby 和大多數資料庫偏好 Snake_case。 JavaScript、Java、C#、Swift 和 Kotlin 更喜歡駝峯命名法。規則是遵循您的語言的官方風格指南和您團隊的現有程式碼 - 切勿在一個程式碼庫中混合約定。

是否允許前導或尾隨底線?

帶有下劃線前綴的名稱,例如 _private 在 Python 和 Ruby 中通常表示「僅供內部使用」。雙下劃線 (__name__) 保留用於語言定義的識別符。我們的轉換器會從常規短語中刪除前導和尾隨下劃線 - 如果需要,請手動將其添加回來。

數字是如何處理的?

數字保留在原來的位置:「version 2 alpha」→「version_2_alpha」。緊跟在字母後面的數字不會被分隔,除非輸入的數字之間有空格或標點符號。

為什麼snake_case以蛇的名字命名?

下劃線的全小寫字母在視覺上就像一條蛇在頁面上滑行。這個名字在 2000 年代中期的早期 Ruby 社區中流行起來。

將我們的工具嵌入您的網站

對任何網站免費。沒有註冊。 iframe 從我們的伺服器載入並自動保持最新狀態。

📋 嵌入字數計數器

複製此片段(自動調整大小,複製按鈕有效):

即時預覽:

📋嵌入這個snake_case轉換器

複製此片段(自動調整大小,複製按鈕有效):

即時預覽:

想要更多選擇嗎? 所有嵌入式工具 →