Case
Převodník velikosti písmen
Převod textu mezi camelCase, snake_case, kebab-case a dalšími.
O převodu velikosti písmen
Každá jazyková komunita se ustálila na vlastním stylu pojmenování, takže stejná věc se podle prostředí píše jako userName, user_name nebo user-name. Tento nástroj rozdělí text na slova — rozpozná přitom stejně dobře přechody camelCase, podtržítka, spojovníky i mezery — a znovu jej složí v každém stylu. Písmena s diakritikou i nelatinková písmena zůstávají zachována.
Číslice se přichytí ke slovu, se kterým sousedí, místo aby se staly vlastním tokenem: address2Line se rozdělí na „address2“ a „Line“, ne na „address“, „2“ a „Line“, což odpovídá tomu, jak většina stylových příruček zachází s číslovanými identifikátory jako address2 nebo v2Config. Právě tato logika dělení na slova — ne pevný slovník — také umožňuje zpracovat názvy, které nikdy předtím neviděl; cokoli, co vypadá jako složený identifikátor, v kterémkoli ze vstupních stylů, se převede správně.
Kde se s tím setkáte
- Přejmenování proměnných při přenosu kódu mezi jazyky
- Převod záhlaví sloupce na název databázového pole nebo klíč JSON
- Tvorba URL slugů a názvů tříd CSS z nadpisu
- Sjednocení nekonzistentního pojmenování před revizí kódu
Často kladené otázky
Jak se rozpoznávají slova?
Text se dělí na mezerách, podtržítkách, spojovnících a interpunkci a také tam, kde po malém písmenu následuje velké. Souvislé řady velkých písmen zůstávají pohromadě, takže z HTTPServer vznikne „HTTP Server“, nikoli „H T T P Server“.
Proč VELKÁ PÍSMENA a Title Case zachovávají interpunkci?
To jsou styly pro běžný text: mění jen velikost písmen a zbytek nechávají beze změny. Styly pro identifikátory — camelCase, snake_case a ostatní — interpunkci odstraňují, protože ve většině identifikátorů není povolená.
Odesílá se můj text na server?
Ne. Tento nástroj běží zcela ve vašem prohlížeči; text nikdy neopustí vaše zařízení.
Jak se zachází s čísly v identifikátoru jako address2Line nebo v2Config?
Číslice zůstává přichycená ke slovu bezprostředně před ní, místo aby se stala samostatným slovem — address2Line se rozdělí na „address2“ a „Line“ a v2Config se rozdělí na „v2“ a „Config“. To odpovídá tomu, jak většina stylových příruček už zachází s číslovanými poli a verzovanými názvy, takže převod address2Line do snake_case dá address2_line, ne poněkud podivnější address_2_line.