About Regex Named Groups

When you replace a complex regular expression with references to matched groups, consider using named groups. That works as self-explaining documentation of your regex patterns.

import re

original_path = re.sub(
    r"/__CACHE__/(?P<original>.+?)_xs\.(?P<ext>\w+)$",
    r"/\g<original>.\g<ext>",
    version_path,
)

Tips and Tricks Programming Python 3 Regular Expressions

Django/Python Consulting

If you have a specific Django challenge or integration you'd like to solve, I'd be happy to help. Book a free 30-minute call to discuss your project, see if we're a good fit, and explore the best approach for your needs. After the call, you'll receive a tailored cost estimate based on what we discuss.