python-string-utils
Utility functions for strings validation and manipulation.
What it is and what it does
python-string-utils is a pure-Python library for common string operations, organized into three modules: validation (checking if a string is an email, URL, IP, UUID, ISBN, JSON, or matches patterns like camel case or snake case), manipulation (converting between naming conventions, reversing, shuffling, stripping HTML, prettifying, slugifying, and asciifying), and generation (creating strings with specific properties). It has no external dependencies and relies on compiled regex for performance.
The library was last updated in March 2020 and is no longer actively maintained. While it remains stable and has 100% code coverage as of its final release, it receives no updates for new Python versions, security patches, or changes to validation standards. It is suitable for straightforward string operations in projects where you can tolerate a static codebase, but not recommended for new projects requiring ongoing support or modern standards compliance.
Use it for:
- Validate user input for email addresses, URLs, and IP addresses in web forms or APIs.
- Convert between naming conventions (camelCase ↔ snake_case) when integrating code from different sources.
- Generate URL-safe slugs from user-provided titles or content for routing and SEO.
- Check if a string is valid JSON, UUID, ISBN, or credit card number before processing.
- Strip HTML tags and prettify text for display or storage in plain-text contexts.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides functions to validate, manipulate, and generate strings—checking formats like URLs, emails, IP addresses, and JSON; transforming between naming conventions; and performing operations like slugification and HTML stripping.
No, not for new projects. The package is abandoned with no maintenance since 2022. While it is stable and dependency-free, standard library alternatives cover most use cases better. Install only if maintaining legacy code already using it.
Install
python-string-utils on PyPI
pip
pip install python-string-utilsuv
uv add python-string-utilspoetry
poetry add python-string-utilsInstalling python-string-utils
Before you install
Low install friction with no external runtime dependencies. However, the package is abandoned—last release was March 2020 and last commit December 2022, with no active maintenance. Use only if the feature set meets your needs and you are comfortable maintaining a fork if issues arise.
License in practice
MIT license is permissive and poses no restrictions on commercial or proprietary use, modification, or redistribution.
Quickstart
pip install python-string-utils
from python_string_utils import is_email, slugify
print(is_email('test@example.com')) # True
print(slugify('Hello World!')) # 'hello-world'
Requires Python 3.5 or later.
Verify before relying
- Whether the regex-based validation functions handle all edge cases correctly for modern standards (e.g., RFC 5321 for email, RFC 3986 for URL).
- Performance characteristics when processing very large strings or high-volume validation workloads.
- Compatibility with Python versions released after the last update in 2022.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.5) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | abandoned — 2,354 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 686,044/month — #5,350 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: python_string_utils-1.0.0-py3-none-any.whl
Keywords: string, str, utilities, validation, compression, development
Tags
More Libraries packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
python-dateutilProvides parsing, arithmetic, and recurrence…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
unicode-slugifyConverts strings into URL-friendly slugs while…
permissive · top 15,000 on PyPI
slugifyConverts text strings into URL-safe slugs by…
unclear · top 15,000 on PyPI
python-slugifyConverts text strings—including unicode, HTML…
permissive · top 1,000 on PyPI
pyhumpsConverts strings and dictionary keys between…
permissive · top 5,000 on PyPI
case-convertConverts strings between different case formats…
copyleft · top 15,000 on PyPI
normalityNormality removes diacritics, punctuation, and…
permissive · top 15,000 on PyPI
commonregexExtracts dates, times, emails, phone numbers,…
permissive · top 15,000 on PyPI
coolnameGenerates random human-readable names and…
permissive · top 5,000 on PyPI
pyheckConverts strings between case styles…
permissive · top 15,000 on PyPI
email-validatorValidates email address syntax and optionally…
permissive · top 1,000 on PyPI