Reference library

Strings & text

Format, split, join, parse, and clean text — everyday Python string patterns.

73 matches
Strings & text easy

How to Process Text in Python: Normalize Whitespace and Count Words

A beginner-friendly function that normalizes whitespace in a string and counts total and unique words using Python's standard library.

strings text-processing word-count
Python
def process_text(text):
    """Basic text processing: normalize whitespace and count words."""
    normalized = " ".join(text.split())
    word_count = len(normalized.split())
    char_count = len(normalized)
    
    # Count unique words
    unique_words = set(normalized.lower().split())
    unique_count = len(unique…
13 0 Open
Strings & text easy

How to Remove Duplicate Adjacent Spaces in Python

This Python function collapses any sequence of two or more adjacent spaces into a single space, preserving all other characters.

strings whitespace text-cleaning
Python
def remove_duplicate_adjacent_spaces(text):
    """Replace sequences of 2+ spaces with a single space."""
    result = []
    prev_was_space = False
    for char in text:
        if char == " ":
            if not prev_was_space:
                result.append(char)
            prev_was_space = True
        else:
     …
13 0 Open
Strings & text easy

How to Remove HTML Tags in Python with Regex

Strips all HTML tags from a string using a regular expression and cleans extra whitespace.

regex html text-cleaning
Python
import re

def remove_html_tags(text: str) -> str:
    """Remove all HTML tags from the given text using regex."""
    # Remove opening and closing tags
    clean = re.sub(r'<[^>]+>', '', text)
    # Remove any extra whitespace left behind
    clean = re.sub(r'\s+', ' ', clean).strip()
    return clean

if __name__ ==…
13 0 Open
Strings & text easy

How to Replace Multiple Spaces with a Single Space in Python

This snippet uses the `re` module to collapse runs of consecutive spaces in a string into a single space, cleaning up whitespace.

regex strings whitespace
Python
import re

def collapse_spaces(text):
    """Replace multiple consecutive spaces with a single space."""
    return re.sub(r' +', ' ', text)

if __name__ == "__main__":
    sample = "This   has   multiple    spaces   between words."
    result = collapse_spaces(sample)
    print(f"Original: '{sample}'")
    print(f"Co…
15 0 Open
Strings & text easy

How to Round Numbers with f-strings in Python

Round numbers directly inside f-string expressions using the built-in round() function for clean, readable output formatting.

f-string rounding formatting
Python
def main():
    # Values to format with expression-based rounding
    price = 19.995
    tax_rate = 0.0825
    distance = 1234.56789

    # Round inside the f-string expression using round()
    print(f"Price rounded to cents: ${round(price, 2)}")

    # Combine rounding with arithmetic inside the expression
    total…
12 0 Open
Strings & text easy

How to Slugify a String in Python

Convert any text into a URL-friendly slug using the standard library's unicodedata and re modules.

slugify string url
Python
import re
import unicodedata

def slugify(text):
    text = unicodedata.normalize('NFKD', text)
    text = text.encode('ascii', 'ignore').decode('ascii')
    text = re.sub(r'[^\w\s-]', '', text).strip().lower()
    text = re.sub(r'[-\s]+', '-', text)
    return text

if __name__ == "__main__":
    title = "Hello, Worl…
14 0 Open
Strings & text easy

How to Sort Text Alphabetically in Python

Sort words or lines alphabetically with case-insensitive ordering while preserving original casing.

sorting text-processing strings
Python
def sort_words(text):
    """Sort words alphabetically (case-insensitive), preserving case."""
    words = text.split()
    return sorted(words, key=str.lower)


def sort_lines(text):
    """Sort lines alphabetically (case-insensitive), preserving case."""
    lines = [line for line in text.splitlines() if line.strip(…
12 0 Open
Strings & text easy

How to Sort Text in Python with a Simple Helper Function

A compact helper function that sorts a list of strings or splits a string into words and sorts them alphabetically, with optional reverse ordering.

sorting strings text-processing
Python
def sort_text(data, reverse=False):
    """
    Sort a list of strings (or a single string split into words) alphabetically.
    """
    if isinstance(data, str):
        words = data.split()
    else:
        words = [str(item) for item in data]
    return sorted(words, reverse=reverse)


if __name__ == "__main__":
 …
12 0 Open
Strings & text easy

How to Split Lines and Strip Blank Lines in Python

Split a multiline string into non-empty lines and strip surrounding whitespace using a list comprehension.

string splitlines strip
Python
import sys

def split_and_strip(text):
    """Split text into non-blank lines, stripping whitespace."""
    return [line.strip() for line in text.splitlines() if line.strip()]

if __name__ == "__main__":
    sample_text = """  First line   
    
    Second line	
      
    Third line  """
    result = split_and_strip(…
12 0 Open
Strings & text easy

How to Split Strings in Python (Beginner-Friendly)

Split Python strings by a delimiter into lists, plus a cleanup variant that strips whitespace and filters empty parts.

string split text parsing delimiter
Python
def split_text(text, delimiter=" "):
    """Split a string by a delimiter and return a list of parts."""
    return text.split(delimiter)


def split_text_with_cleanup(text, delimiter=" "):
    """Split a string, stripping whitespace and filtering empty parts."""
    parts = text.split(delimiter)
    cleaned = [part.s…
16 0 Open
Strings & text easy

How to Split a String by Comma in Python

Splits a comma-separated string into a list of trimmed items using Python's built-in split and a list comprehension.

strings split list
Python
def split_csv(line):
    return [item.strip() for item in line.split(",")]

if __name__ == "__main__":
    sample = "apple, banana, cherry, date"
    result = split_csv(sample)
    print(result)
    print(f"Number of items: {len(result)}")
12 0 Open
Strings & text easy

How to Strip Whitespace in Python

This code demonstrates how to remove leading and trailing whitespace from a string using the built-in strip() method.

string whitespace text-cleaning
Python
def strip_whitespace(text: str) -> str:
    return text.strip()

if __name__ == "__main__":
    sample = "   Hello, world!   "
    result = strip_whitespace(sample)
    print(f"Original: '{sample}'")
    print(f"Stripped: '{result}'")
14 0 Open
Strings & text easy

How to Summarize Text Statistics in Python

This function returns basic statistics about a string, including character, word, and sentence counts, plus case and digit counts.

strings text-processing statistics
Python
def summarize_text(text):
    """Return basic statistics about a string."""
    words = text.split()
    return {
        "characters": len(text),
        "words": len(words),
        "sentences": text.count(".") + text.count("!") + text.count("?"),
        "uppercase": sum(c.isupper() for c in text),
        "lowerca…
14 0 Open
Strings & text easy

How to Swap Case of Every Character in Python

Swap uppercase to lowercase and lowercase to uppercase for every character in a string using Python's built-in swapcase() method.

string swapcase case conversion
Python
def swap_case(text):
    """
    Swap uppercase to lowercase and lowercase to uppercase 
    for every character in the given string.
    """
    return text.swapcase()

if __name__ == "__main__":
    sample = "Hello World! Python3.9"
    result = swap_case(sample)
    print(f"Input:  {sample}")
    print(f"Output: {r…
14 0 Open
Strings & text easy

How to Transform Text in Python with a Helper Function

Build a simple Python helper to strip extra whitespace and convert text to upper, lower, or title case.

strings text helper
Python
def transform_text(text, upper=False, lower=False, strip_whitespace=False, title_case=False):
    """Apply common string transformations for beginners."""
    result = text

    if strip_whitespace:
        result = " ".join(result.split())

    if upper and lower:
        raise ValueError("Cannot apply both upper and…
12 0 Open
Strings & text easy

How to Translate Characters in a String with str.maketrans in Python

Build and apply character translation tables with str.maketrans and str.translate to replace, delete, or remap letters in a Python string.

string translation character-mapping
Python
def translate_demo():
    # Build a translation table: a→1, e→2, i→3, o→4, u→5
    table = str.maketrans("aeiou", "12345")
    
    text = "Hello, Python world! Keep coding, friend."
    translated = text.translate(table)
    
    print(f"Original: {text}")
    print(f"Translated: {translated}")
    
    # Example wit…
11 0 Open
Strings & text easy

How to Truncate a String with Ellipsis in Python

A function that shortens text to a maximum length and appends an ellipsis when truncation occurs, handling edge cases.

strings truncation text-processing
Python
def truncate_with_ellipsis(text: str, max_length: int) -> str:
    """Truncate text to max_length, appending ellipsis if truncated."""
    if len(text) <= max_length:
        return text
    if max_length <= 3:
        return text[:max_length]
    return text[: max_length - 3] + "..."

if __name__ == "__main__":
    t…
11 0 Open
Strings & text easy

How to Unescape HTML Entities in Python

Convert HTML entities like &amp; and &lt; back to their literal characters using the standard library html module.

html entities strings
Python
import html

def unescape_html_entities(text: str) -> str:
    """Convert HTML entities like &amp; to their character equivalents."""
    return html.unescape(text)

if __name__ == "__main__":
    sample = "Tom &amp; Jerry &lt;cartoon&gt; &quot;classic&quot; &apos;fun&apos; &copy; 2024"
    result = unescape_html_enti…
15 0 Open
Strings & text easy

How to Use Template Strings for Substitution in Python

This code shows how to use Python's Template class for safe string substitution, replacing placeholders like $name with actual values.

template string substitution
Python
from string import Template

def format_user_message(name, role, company):
    template = Template("Hello $name! We are glad to have you as our $role at $company.")
    return template.substitute(name=name, role=role, company=company)

if __name__ == "__main__":
    result = format_user_message("Alice", "Python Develo…
12 0 Open
Strings & text easy

How to Validate Text Input in Python: A Simple Text Processor

A Python function that validates a text string by trimming whitespace, then returns a dictionary with character, word, and sentence counts.

text-validation strings input-checking
Python
def validate_text(text: str) -> dict:
    """Analyze a text string and return basic validation statistics."""
    stripped = text.strip()
    if not stripped:
        return {
            "valid": False,
            "reason": "Text is empty or only whitespace",
            "characters": 0,
            "words": 0,
    …
12 0 Open
Strings & text easy

How to Validate Text Strings in Python

Validate strings with a reusable helper that checks type, length limits, and empty string handling.

validation strings helper-function
Python
def is_valid_text(value, min_length=1, max_length=None, allow_empty=False):
    """
    Validate if a value is a string and meets length requirements.
    
    Args:
        value: The value to validate
        min_length: Minimum allowed length (default 1)
        max_length: Maximum allowed length (None = no limit)
…
13 0 Open
Strings & text easy

How to build a text helper in Python for beginners

This code provides easy-to-use functions for cleaning text, removing punctuation, counting word frequencies, and summarizing strings — perfect for beginners.

string-manipulation text-processing word-count
Python
def clean_text(text: str) -> str:
    """Clean and normalize a text string."""
    text = text.strip()
    text = text.replace("  ", " ")
    text = text.capitalize()
    text = text.replace(".", ".")
    return text


def remove_punctuation(text: str) -> str:
    """Remove common punctuation marks from a string."""
 …
13 0 Open
Strings & text easy

How to parse key=value pairs in Python

Parse a single line of key=value pairs separated by a delimiter into a Python dictionary.

parsing key-value dictionary
Python
def parse_key_value_pairs(line: str, delimiter: str = "&") -> dict:
    """Parse a single line of key=value pairs into a dictionary."""
    pairs = {}
    for token in line.split(delimiter):
        if not token.strip():
            continue
        key, _, value = token.partition("=")
        pairs[key.strip()] = val…
11 0 Open
Strings & text easy

How to remove punctuation from a string in Python

Remove all punctuation characters from a string using the str.translate method and string.punctuation from the standard library.

string punctuation translate
Python
import string

def remove_punctuation(text: str) -> str:
    return text.translate(str.maketrans("", "", string.punctuation))

if __name__ == "__main__":
    sample = "Hello, world! It's a test... (with punctuation) - done?"
    cleaned = remove_punctuation(sample)
    print(f"Original: {sample}")
    print(f"Cleaned:…
14 0 Open

Browse by section

Each section groups closely related Python snippets.

Strings & text — Python code examples

What you will find here

This page collects strings & text snippets — short, copy-ready Python you can paste into our free online IDE and run without installing anything. Each sample includes a plain-English explanation and the full source code.

Samples vs tutorials and challenges

Samples are quick reference — one concept per page. For step-by-step teaching, use our Python tutorials. To test yourself, try quizzes or coding challenges. Clean up style with the Python formatter.