A feature-rich Python text case conversion library.
Documentation: https://zobweyt.github.io/textcase
PyPI: https://pypi.org/project/textcase
- Text case conversion: convert strings between various text cases (e.g., snake_case, kebab-case, camelCase, etc.).
- Extensible: extend the library with custom word boundaries and cases.
- Accurate: finds any word boundaries in strings including acronyms (as in
"HTTPRequest"
). - Non-ASCII Support: handles non-ASCII characters seamlessly (no inferences on the input language itself is made).
- Tiny, Performant & Zero Dependencies: a regex-free, efficient library that stays lightweight with no external dependencies.
- 100% test coverage: every line of code is rigorously tested for reliability.
- 100% type annotated codebase: full type annotations for best developer experience.
Create and activate a virtual environment and then install textcase
:
pip install textcase
Convert a string to a text case:
import textcase
textcase.snake("Hello, world!") # hello_world
textcase.constant("Hello, world!") # HELLO_WORLD
textcase.kebab("Hello, world!") # hello-world
textcase.middot("Hello, world!") # hello·world
textcase.camel("Hello, world!") # helloWorld
textcase.pascal("Hello, world!") # HelloWorld
textcase.lower("Hello, world!") # hello world
textcase.upper("Hello, world!") # HELLO WORLD
textcase.title("Hello, world!") # Hello World
textcase.sentence("Hello, world!") # Hello world
See documentation for more usage examples.