Skip to main content

Django Regex Field

Project description

Build Status

django-regex-field

Stores regular expressions in Django models.

A Brief Overview

The Django regex field app provides a custom field for a Django model that stores a regex. This provides the ability to easily store regexs and access them as compiled regular expressions from your models.

Storing and Retrieving a Regex

A regular expression can be stored and retrieved in a Django model as follows:

from django.db import models
from regex_field.fields import RegexField


class RegexModel(models.Model):
    regex = RegexField(max_length=128)


model_obj = RegexModel.objects.create(regex='a')

# Access the regex as a compiled regular expression
>>> print(model_obj.regex.match('b'))
None

Using regex flags

Flags can be provided in the field definition and will be applied when the regex is compiled. If you manually compile a regex object with other flags and set it on the model, those flags will not be preserved. Only the flags passed to the field's constructor are used.

import re
from django.db import models
from regex_field.fields import RegexField


class RegexModel(models.Model):
    regex = RegexField(max_length=128, re_flags=re.IGNORECASE)


model_obj = RegexModel.objects.create(regex='A')

# Case insensitive matching
>>> print(model_obj.regex.match('a') is not None)
True

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-regex-field-2.0.0.tar.gz (5.7 kB view hashes)

Uploaded Source

Built Distribution

django_regex_field-2.0.0-py2.py3-none-any.whl (7.1 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page