Skip to main content

Alternative regular expression module, to replace re.

Project description

Introduction

This regex implementation is backwards-compatible with the standard ‘re’ module, but offers additional functionality.

Python 2

Python 2 is no longer supported. The last release that supported Python 2 was 2021.11.10.

PyPy

This module is targeted at CPython. It expects that all codepoints are the same width, so it won’t behave properly with PyPy outside U+0000..U+007F because PyPy stores strings as UTF-8.

Multithreading

The regex module releases the GIL during matching on instances of the built-in (immutable) string classes, enabling other Python threads to run concurrently. It is also possible to force the regex module to release the GIL during matching by calling the matching methods with the keyword argument concurrent=True. The behaviour is undefined if the string changes during matching, so use it only when it is guaranteed that that won’t happen.

Unicode

This module supports Unicode 17.0.0. Full Unicode case-folding is supported.

Flags

There are 2 kinds of flag: scoped and global. Scoped flags can apply to only part of a pattern and can be turned on or off; global flags apply to the entire pattern and can only be turned on.

The scoped flags are: ASCII (?a), FULLCASE (?f), IGNORECASE (?i), LOCALE (?L), MULTILINE (?m), DOTALL (?s), UNICODE (?u), VERBOSE (?x), WORD (?w).

The global flags are: BESTMATCH (?b), ENHANCEMATCH (?e), POSIX (?p), REVERSE (?r), VERSION0 (?V0), VERSION1 (?V1).

If neither the ASCII, LOCALE nor UNICODE flag is specified, it will default to UNICODE if the regex pattern is a Unicode string and ASCII if it’s a bytestring.

The ENHANCEMATCH flag makes fuzzy matching attempt to improve the fit of the next match that it finds.

The BESTMATCH flag makes fuzzy matching search for the best match instead of the next match.

Old vs new behaviour

In order to be compatible with the re module, this module has 2 behaviours:

  • Version 0 behaviour (old behaviour, compatible with the re module):

    Please note that the re module’s behaviour may change over time, and I’ll endeavour to match that behaviour in version 0.

    • Indicated by the VERSION0 flag.

    • Zero-width matches are not handled correctly in the re module before Python 3.7. The behaviour in those earlier versions is:

      • .split won’t split a string at a zero-width match.

      • .sub will advance by one character after a zero-width match.

    • Inline flags apply to the entire pattern, and they can’t be turned off.

    • Only simple sets are supported.

    • Case-insensitive matches in Unicode use simple case-folding by default.

  • Version 1 behaviour (new behaviour, possibly different from the re module):

    • Indicated by the VERSION1 flag.

    • Zero-width matches are handled correctly.

    • Inline flags apply to the end of the group or pattern, and they can be turned off.

    • Nested sets and set operations are supported.

    • Case-insensitive matches in Unicode use full case-folding by default.

If no version is specified, the regex module will default to regex.DEFAULT_VERSION.

Case-insensitive matches in Unicode

The regex module supports both simple and full case-folding for case-insensitive matches in Unicode. Use of full case-folding can be turned on using the FULLCASE flag. Please note that this flag affects how the IGNORECASE flag works; the FULLCASE flag itself does not turn on case-insensitive matching.

Version 0 behaviour: the flag is off by default.

Version 1 behaviour: the flag is on by default.

Nested sets and set operations

It’s not possible to support both simple sets, as used in the re module, and nested sets at the same time because of a difference in the meaning of an unescaped "[" in a set.

For example, the pattern [[a-z]--[aeiou]] is treated in the version 0 behaviour (simple sets, compatible with the re module) as:

  • Set containing “[” and the letters “a” to “z”

  • Literal “–”

  • Set containing letters “a”, “e”, “i”, “o”, “u”

  • Literal “]”

but in the version 1 behaviour (nested sets, enhanced behaviour) as:

  • Set which is:

    • Set containing the letters “a” to “z”

  • but excluding:

    • Set containing the letters “a”, “e”, “i”, “o”, “u”

Version 0 behaviour: only simple sets are supported.

Version 1 behaviour: nested sets and set operations are supported.

Notes on named groups

All groups have a group number, starting from 1.

Groups with the same group name will have the same group number, and groups with a different group name will have a different group number.

The same name can be used by more than one group, with later captures ‘overwriting’ earlier captures. All the captures of the group will be available from the captures method of the match object.

Group numbers will be reused across different branches of a branch reset, eg. (?|(first)|(second)) has only group 1. If groups have different group names then they will, of course, have different group numbers, eg. (?|(?P<foo>first)|(?P<bar>second)) has group 1 (“foo”) and group 2 (“bar”).

In the regex (\s+)(?|(?P<foo>[A-Z]+)|(\w+) (?P<foo>[0-9]+) there are 2 groups:

  • (\s+) is group 1.

  • (?P<foo>[A-Z]+) is group 2, also called “foo”.

  • (\w+) is group 2 because of the branch reset.

  • (?P<foo>[0-9]+) is group 2 because it’s called “foo”.

If you want to prevent (\w+) from being group 2, you need to name it (different name, different group number).

Additional features

The issue numbers relate to the Python bug tracker, except where listed otherwise.

Added \p{Horiz_Space} and \p{Vert_Space} (GitHub issue 477)

\p{Horiz_Space} or \p{H} matches horizontal whitespace and \p{Vert_Space} or \p{V} matches vertical whitespace.

Added support for lookaround in conditional pattern (Hg issue 163)

The test of a conditional pattern can be a lookaround.

>>> regex.match(r'(?(?=\d)\d+|\w+)', '123abc')
<regex.Match object; span=(0, 3), match='123'>
>>> regex.match(r'(?(?=\d)\d+|\w+)', 'abc123')
<regex.Match object; span=(0, 6), match='abc123'>

This is not quite the same as putting a lookaround in the first branch of a pair of alternatives.

>>> print(regex.match(r'(?:(?=\d)\d+\b|\w+)', '123abc'))
<regex.Match object; span=(0, 6), match='123abc'>
>>> print(regex.match(r'(?(?=\d)\d+\b|\w+)', '123abc'))
None

In the first example, the lookaround matched, but the remainder of the first branch failed to match, and so the second branch was attempted, whereas in the second example, the lookaround matched, and the first branch failed to match, but the second branch was not attempted.

Added POSIX matching (leftmost longest) (Hg issue 150)

The POSIX standard for regex is to return the leftmost longest match. This can be turned on using the POSIX flag.

>>> # Normal matching.
>>> regex.search(r'Mr|Mrs', 'Mrs')
<regex.Match object; span=(0, 2), match='Mr'>
>>> regex.search(r'one(self)?(selfsufficient)?', 'oneselfsufficient')
<regex.Match object; span=(0, 7), match='oneself'>
>>> # POSIX matching.
>>> regex.search(r'(?p)Mr|Mrs', 'Mrs')
<regex.Match object; span=(0, 3), match='Mrs'>
>>> regex.search(r'(?p)one(self)?(selfsufficient)?', 'oneselfsufficient')
<regex.Match object; span=(0, 17), match='oneselfsufficient'>

Note that it will take longer to find matches because when it finds a match at a certain position, it won’t return that immediately, but will keep looking to see if there’s another longer match there.

Added (?(DEFINE)...) (Hg issue 152)

If there’s no group called “DEFINE”, then … will be ignored except that any groups defined within it can be called and that the normal rules for numbering groups still apply.

>>> regex.search(r'(?(DEFINE)(?P<quant>\d+)(?P<item>\w+))(?&quant) (?&item)', '5 elephants')
<regex.Match object; span=(0, 11), match='5 elephants'>

Added (*PRUNE), (*SKIP) and (*FAIL) (Hg issue 153)

(*PRUNE) discards the backtracking info up to that point. When used in an atomic group or a lookaround, it won’t affect the enclosing pattern.

(*SKIP) is similar to (*PRUNE), except that it also sets where in the text the next attempt to match will start. When used in an atomic group or a lookaround, it won’t affect the enclosing pattern.

(*FAIL) causes immediate backtracking. (*F) is a permitted abbreviation.

Added \K (Hg issue 151)

Keeps the part of the entire match after the position where \K occurred; the part before it is discarded.

It does not affect what groups return.

>>> m = regex.search(r'(\w\w\K\w\w\w)', 'abcdef')
>>> m[0]
'cde'
>>> m[1]
'abcde'
>>>
>>> m = regex.search(r'(?r)(\w\w\K\w\w\w)', 'abcdef')
>>> m[0]
'bc'
>>> m[1]
'bcdef'

Added capture subscripting for expandf and subf/subfn (Hg issue 133)

You can use subscripting to get the captures of a repeated group.

>>> m = regex.match(r"(\w)+", "abc")
>>> m.expandf("{1}")
'c'
>>> m.expandf("{1[0]} {1[1]} {1[2]}")
'a b c'
>>> m.expandf("{1[-1]} {1[-2]} {1[-3]}")
'c b a'
>>>
>>> m = regex.match(r"(?P<letter>\w)+", "abc")
>>> m.expandf("{letter}")
'c'
>>> m.expandf("{letter[0]} {letter[1]} {letter[2]}")
'a b c'
>>> m.expandf("{letter[-1]} {letter[-2]} {letter[-3]}")
'c b a'

Added support for referring to a group by number using (?P=...)

This is in addition to the existing \g<...>.

Fixed the handling of locale-sensitive regexes

The LOCALE flag is intended for legacy code and has limited support. You’re still recommended to use Unicode instead.

Added partial matches (Hg issue 102)

A partial match is one that matches up to the end of string, but that string has been truncated and you want to know whether a complete match could be possible if the string had not been truncated.

Partial matches are supported by match, search, fullmatch and finditer with the partial keyword argument.

Match objects have a partial attribute, which is True if it’s a partial match.

For example, if you wanted a user to enter a 4-digit number and check it character by character as it was being entered:

>>> pattern = regex.compile(r'\d{4}')

>>> # Initially, nothing has been entered:
>>> print(pattern.fullmatch('', partial=True))
<regex.Match object; span=(0, 0), match='', partial=True>

>>> # An empty string is OK, but it's only a partial match.
>>> # The user enters a letter:
>>> print(pattern.fullmatch('a', partial=True))
None
>>> # It'll never match.

>>> # The user deletes that and enters a digit:
>>> print(pattern.fullmatch('1', partial=True))
<regex.Match object; span=(0, 1), match='1', partial=True>
>>> # It matches this far, but it's only a partial match.

>>> # The user enters 2 more digits:
>>> print(pattern.fullmatch('123', partial=True))
<regex.Match object; span=(0, 3), match='123', partial=True>
>>> # It matches this far, but it's only a partial match.

>>> # The user enters another digit:
>>> print(pattern.fullmatch('1234', partial=True))
<regex.Match object; span=(0, 4), match='1234'>
>>> # It's a complete match.

>>> # If the user enters another digit:
>>> print(pattern.fullmatch('12345', partial=True))
None
>>> # It's no longer a match.

>>> # This is a partial match:
>>> pattern.match('123', partial=True).partial
True

>>> # This is a complete match:
>>> pattern.match('1233', partial=True).partial
False

* operator not working correctly with sub() (Hg issue 106)

Sometimes it’s not clear how zero-width matches should be handled. For example, should .* match 0 characters directly after matching >0 characters?

>>> regex.sub('.*', 'x', 'test')
'xx'
>>> regex.sub('.*?', '|', 'test')
'|||||||||'

Added capturesdict (Hg issue 86)

capturesdict is a combination of groupdict and captures:

groupdict returns a dict of the named groups and the last capture of those groups.

captures returns a list of all the captures of a group

capturesdict returns a dict of the named groups and lists of all the captures of those groups.

>>> m = regex.match(r"(?:(?P<word>\w+) (?P<digits>\d+)\n)+", "one 1\ntwo 2\nthree 3\n")
>>> m.groupdict()
{'word': 'three', 'digits': '3'}
>>> m.captures("word")
['one', 'two', 'three']
>>> m.captures("digits")
['1', '2', '3']
>>> m.capturesdict()
{'word': ['one', 'two', 'three'], 'digits': ['1', '2', '3']}

Added allcaptures and allspans (Git issue 474)

allcaptures returns a list of all the captures of all the groups.

allspans returns a list of all the spans of the all captures of all the groups.

>>> m = regex.match(r"(?:(?P<word>\w+) (?P<digits>\d+)\n)+", "one 1\ntwo 2\nthree 3\n")
>>> m.allcaptures()
(['one 1\ntwo 2\nthree 3\n'], ['one', 'two', 'three'], ['1', '2', '3'])
>>> m.allspans()
([(0, 20)], [(0, 3), (6, 9), (12, 17)], [(4, 5), (10, 11), (18, 19)])

Allow duplicate names of groups (Hg issue 87)

Group names can be duplicated.

>>> # With optional groups:
>>>
>>> # Both groups capture, the second capture 'overwriting' the first.
>>> m = regex.match(r"(?P<item>\w+)? or (?P<item>\w+)?", "first or second")
>>> m.group("item")
'second'
>>> m.captures("item")
['first', 'second']
>>> # Only the second group captures.
>>> m = regex.match(r"(?P<item>\w+)? or (?P<item>\w+)?", " or second")
>>> m.group("item")
'second'
>>> m.captures("item")
['second']
>>> # Only the first group captures.
>>> m = regex.match(r"(?P<item>\w+)? or (?P<item>\w+)?", "first or ")
>>> m.group("item")
'first'
>>> m.captures("item")
['first']
>>>
>>> # With mandatory groups:
>>>
>>> # Both groups capture, the second capture 'overwriting' the first.
>>> m = regex.match(r"(?P<item>\w*) or (?P<item>\w*)?", "first or second")
>>> m.group("item")
'second'
>>> m.captures("item")
['first', 'second']
>>> # Again, both groups capture, the second capture 'overwriting' the first.
>>> m = regex.match(r"(?P<item>\w*) or (?P<item>\w*)", " or second")
>>> m.group("item")
'second'
>>> m.captures("item")
['', 'second']
>>> # And yet again, both groups capture, the second capture 'overwriting' the first.
>>> m = regex.match(r"(?P<item>\w*) or (?P<item>\w*)", "first or ")
>>> m.group("item")
''
>>> m.captures("item")
['first', '']

Added fullmatch (issue #16203)

fullmatch behaves like match, except that it must match all of the string.

>>> print(regex.fullmatch(r"abc", "abc").span())
(0, 3)
>>> print(regex.fullmatch(r"abc", "abcx"))
None
>>> print(regex.fullmatch(r"abc", "abcx", endpos=3).span())
(0, 3)
>>> print(regex.fullmatch(r"abc", "xabcy", pos=1, endpos=4).span())
(1, 4)
>>>
>>> regex.match(r"a.*?", "abcd").group(0)
'a'
>>> regex.fullmatch(r"a.*?", "abcd").group(0)
'abcd'

Added subf and subfn

subf and subfn are alternatives to sub and subn respectively. When passed a replacement string, they treat it as a format string.

>>> regex.subf(r"(\w+) (\w+)", "{0} => {2} {1}", "foo bar")
'foo bar => bar foo'
>>> regex.subf(r"(?P<word1>\w+) (?P<word2>\w+)", "{word2} {word1}", "foo bar")
'bar foo'

Added expandf to match object

expandf is an alternative to expand. When passed a replacement string, it treats it as a format string.

>>> m = regex.match(r"(\w+) (\w+)", "foo bar")
>>> m.expandf("{0} => {2} {1}")
'foo bar => bar foo'
>>>
>>> m = regex.match(r"(?P<word1>\w+) (?P<word2>\w+)", "foo bar")
>>> m.expandf("{word2} {word1}")
'bar foo'

Detach searched string

A match object contains a reference to the string that was searched, via its string attribute. The detach_string method will ‘detach’ that string, making it available for garbage collection, which might save valuable memory if that string is very large.

>>> m = regex.search(r"\w+", "Hello world")
>>> print(m.group())
Hello
>>> print(m.string)
Hello world
>>> m.detach_string()
>>> print(m.group())
Hello
>>> print(m.string)
None

Recursive patterns (Hg issue 27)

Recursive and repeated patterns are supported.

(?R) or (?0) tries to match the entire regex recursively. (?1), (?2), etc, try to match the relevant group.

(?&name) tries to match the named group.

>>> regex.match(r"(Tarzan|Jane) loves (?1)", "Tarzan loves Jane").groups()
('Tarzan',)
>>> regex.match(r"(Tarzan|Jane) loves (?1)", "Jane loves Tarzan").groups()
('Jane',)

>>> m = regex.search(r"(\w)(?:(?R)|(\w?))\1", "kayak")
>>> m.group(0, 1, 2)
('kayak', 'k', None)

The first two examples show how the subpattern within the group is reused, but is _not_ itself a group. In other words, "(Tarzan|Jane) loves (?1)" is equivalent to "(Tarzan|Jane) loves (?:Tarzan|Jane)".

It’s possible to backtrack into a recursed or repeated group.

You can’t call a group if there is more than one group with that group name or group number ("ambiguous group reference").

The alternative forms (?P>name) and (?P&name) are also supported.

Full Unicode case-folding is supported

In version 1 behaviour, the regex module uses full case-folding when performing case-insensitive matches in Unicode.

>>> regex.match(r"(?iV1)strasse", "stra\N{LATIN SMALL LETTER SHARP S}e").span()
(0, 6)
>>> regex.match(r"(?iV1)stra\N{LATIN SMALL LETTER SHARP S}e", "STRASSE").span()
(0, 7)

In version 0 behaviour, it uses simple case-folding for backward compatibility with the re module.

Approximate “fuzzy” matching (Hg issue 12, Hg issue 41, Hg issue 109)

Regex usually attempts an exact match, but sometimes an approximate, or “fuzzy”, match is needed, for those cases where the text being searched may contain errors in the form of inserted, deleted or substituted characters.

A fuzzy regex specifies which types of errors are permitted, and, optionally, either the minimum and maximum or only the maximum permitted number of each type. (You cannot specify only a minimum.)

The 3 types of error are:

  • Insertion, indicated by “i”

  • Deletion, indicated by “d”

  • Substitution, indicated by “s”

In addition, “e” indicates any type of error.

The fuzziness of a regex item is specified between “{” and “}” after the item.

Examples:

  • foo match “foo” exactly

  • (?:foo){i} match “foo”, permitting insertions

  • (?:foo){d} match “foo”, permitting deletions

  • (?:foo){s} match “foo”, permitting substitutions

  • (?:foo){i,s} match “foo”, permitting insertions and substitutions

  • (?:foo){e} match “foo”, permitting errors

If a certain type of error is specified, then any type not specified will not be permitted.

In the following examples I’ll omit the item and write only the fuzziness:

  • {d<=3} permit at most 3 deletions, but no other types

  • {i<=1,s<=2} permit at most 1 insertion and at most 2 substitutions, but no deletions

  • {1<=e<=3} permit at least 1 and at most 3 errors

  • {i<=2,d<=2,e<=3} permit at most 2 insertions, at most 2 deletions, at most 3 errors in total, but no substitutions

It’s also possible to state the costs of each type of error and the maximum permitted total cost.

Examples:

  • {2i+2d+1s<=4} each insertion costs 2, each deletion costs 2, each substitution costs 1, the total cost must not exceed 4

  • {i<=1,d<=1,s<=1,2i+2d+1s<=4} at most 1 insertion, at most 1 deletion, at most 1 substitution; each insertion costs 2, each deletion costs 2, each substitution costs 1, the total cost must not exceed 4

You can also use “<” instead of “<=” if you want an exclusive minimum or maximum.

You can add a test to perform on a character that’s substituted or inserted.

Examples:

  • {s<=2:[a-z]} at most 2 substitutions, which must be in the character set [a-z].

  • {s<=2,i<=3:\d} at most 2 substitutions, at most 3 insertions, which must be digits.

By default, fuzzy matching searches for the first match that meets the given constraints. The ENHANCEMATCH flag will cause it to attempt to improve the fit (i.e. reduce the number of errors) of the match that it has found.

The BESTMATCH flag will make it search for the best match instead.

Further examples to note:

  • regex.search("(dog){e}", "cat and dog")[1] returns "cat" because that matches "dog" with 3 errors (an unlimited number of errors is permitted).

  • regex.search("(dog){e<=1}", "cat and dog")[1] returns " dog" (with a leading space) because that matches "dog" with 1 error, which is within the limit.

  • regex.search("(?e)(dog){e<=1}", "cat and dog")[1] returns "dog" (without a leading space) because the fuzzy search matches " dog" with 1 error, which is within the limit, and the (?e) then it attempts a better fit.

In the first two examples there are perfect matches later in the string, but in neither case is it the first possible match.

The match object has an attribute fuzzy_counts which gives the total number of substitutions, insertions and deletions.

>>> # A 'raw' fuzzy match:
>>> regex.fullmatch(r"(?:cats|cat){e<=1}", "cat").fuzzy_counts
(0, 0, 1)
>>> # 0 substitutions, 0 insertions, 1 deletion.

>>> # A better match might be possible if the ENHANCEMATCH flag used:
>>> regex.fullmatch(r"(?e)(?:cats|cat){e<=1}", "cat").fuzzy_counts
(0, 0, 0)
>>> # 0 substitutions, 0 insertions, 0 deletions.

The match object also has an attribute fuzzy_changes which gives a tuple of the positions of the substitutions, insertions and deletions.

>>> m = regex.search('(fuu){i<=2,d<=2,e<=5}', 'anaconda foo bar')
>>> m
<regex.Match object; span=(7, 10), match='a f', fuzzy_counts=(0, 2, 2)>
>>> m.fuzzy_changes
([], [7, 8], [10, 11])

What this means is that if the matched part of the string had been:

'anacondfuuoo bar'

it would’ve been an exact match.

However, there were insertions at positions 7 and 8:

'anaconda fuuoo bar'
        ^^

and deletions at positions 10 and 11:

'anaconda f~~oo bar'
           ^^

So the actual string was:

'anaconda foo bar'

Named lists \L<name> (Hg issue 11)

There are occasions where you may want to include a list (actually, a set) of options in a regex.

One way is to build the pattern like this:

>>> p = regex.compile(r"first|second|third|fourth|fifth")

but if the list is large, parsing the resulting regex can take considerable time, and care must also be taken that the strings are properly escaped and properly ordered, for example, “cats” before “cat”.

The new alternative is to use a named list:

>>> option_set = ["first", "second", "third", "fourth", "fifth"]
>>> p = regex.compile(r"\L<options>", options=option_set)

The order of the items is irrelevant, they are treated as a set. The named lists are available as the .named_lists attribute of the pattern object :

>>> print(p.named_lists)
{'options': frozenset({'third', 'first', 'fifth', 'fourth', 'second'})}

If there are any unused keyword arguments, ValueError will be raised unless you tell it otherwise:

>>> option_set = ["first", "second", "third", "fourth", "fifth"]
>>> p = regex.compile(r"\L<options>", options=option_set, other_options=[])
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python310\lib\site-packages\regex\regex.py", line 353, in compile
    return _compile(pattern, flags, ignore_unused, kwargs, cache_pattern)
  File "C:\Python310\lib\site-packages\regex\regex.py", line 500, in _compile
    complain_unused_args()
  File "C:\Python310\lib\site-packages\regex\regex.py", line 483, in complain_unused_args
    raise ValueError('unused keyword argument {!a}'.format(any_one))
ValueError: unused keyword argument 'other_options'
>>> p = regex.compile(r"\L<options>", options=option_set, other_options=[], ignore_unused=True)
>>> p = regex.compile(r"\L<options>", options=option_set, other_options=[], ignore_unused=False)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python310\lib\site-packages\regex\regex.py", line 353, in compile
    return _compile(pattern, flags, ignore_unused, kwargs, cache_pattern)
  File "C:\Python310\lib\site-packages\regex\regex.py", line 500, in _compile
    complain_unused_args()
  File "C:\Python310\lib\site-packages\regex\regex.py", line 483, in complain_unused_args
    raise ValueError('unused keyword argument {!a}'.format(any_one))
ValueError: unused keyword argument 'other_options'
>>>

Start and end of word

\m matches at the start of a word.

\M matches at the end of a word.

Compare with \b, which matches at the start or end of a word.

Unicode line separators

Normally the only line separator is \n (\x0A), but if the WORD flag is turned on then the line separators are \x0D\x0A, \x0A, \x0B, \x0C and \x0D, plus \x85, \u2028 and \u2029 when working with Unicode.

This affects the regex dot ".", which, with the DOTALL flag turned off, matches any character except a line separator. It also affects the line anchors ^ and $ (in multiline mode).

Set operators

Version 1 behaviour only

Set operators have been added, and a set [...] can include nested sets.

The operators, in order of increasing precedence, are:

  • || for union (“x||y” means “x or y”)

  • ~~ (double tilde) for symmetric difference (“x~~y” means “x or y, but not both”)

  • && for intersection (“x&&y” means “x and y”)

  • -- (double dash) for difference (“x–y” means “x but not y”)

Implicit union, ie, simple juxtaposition like in [ab], has the highest precedence. Thus, [ab&&cd] is the same as [[a||b]&&[c||d]].

Examples:

  • [ab] # Set containing ‘a’ and ‘b’

  • [a-z] # Set containing ‘a’ .. ‘z’

  • [[a-z]--[qw]] # Set containing ‘a’ .. ‘z’, but not ‘q’ or ‘w’

  • [a-z--qw] # Same as above

  • [\p{L}--QW] # Set containing all letters except ‘Q’ and ‘W’

  • [\p{N}--[0-9]] # Set containing all numbers except ‘0’ .. ‘9’

  • [\p{ASCII}&&\p{Letter}] # Set containing all characters which are ASCII and letter

regex.escape (issue #2650)

regex.escape has an additional keyword parameter special_only. When True, only ‘special’ regex characters, such as ‘?’, are escaped.

>>> regex.escape("foo!?", special_only=False)
'foo\\!\\?'
>>> regex.escape("foo!?", special_only=True)
'foo!\\?'

regex.escape (Hg issue 249)

regex.escape has an additional keyword parameter literal_spaces. When True, spaces are not escaped.

>>> regex.escape("foo bar!?", literal_spaces=False)
'foo\\ bar!\\?'
>>> regex.escape("foo bar!?", literal_spaces=True)
'foo bar!\\?'

Repeated captures (issue #7132)

A match object has additional methods which return information on all the successful matches of a repeated group. These methods are:

  • matchobject.captures([group1, ...])

    • Returns a list of the strings matched in a group or groups. Compare with matchobject.group([group1, ...]).

  • matchobject.starts([group])

    • Returns a list of the start positions. Compare with matchobject.start([group]).

  • matchobject.ends([group])

    • Returns a list of the end positions. Compare with matchobject.end([group]).

  • matchobject.spans([group])

    • Returns a list of the spans. Compare with matchobject.span([group]).

>>> m = regex.search(r"(\w{3})+", "123456789")
>>> m.group(1)
'789'
>>> m.captures(1)
['123', '456', '789']
>>> m.start(1)
6
>>> m.starts(1)
[0, 3, 6]
>>> m.end(1)
9
>>> m.ends(1)
[3, 6, 9]
>>> m.span(1)
(6, 9)
>>> m.spans(1)
[(0, 3), (3, 6), (6, 9)]

Atomic grouping (?>...) (issue #433030)

If the following pattern subsequently fails, then the subpattern as a whole will fail.

Possessive quantifiers

(?:...)?+ ; (?:...)*+ ; (?:...)++ ; (?:...){min,max}+

The subpattern is matched up to ‘max’ times. If the following pattern subsequently fails, then all the repeated subpatterns will fail as a whole. For example, (?:...)++ is equivalent to (?>(?:...)+).

Scoped flags (issue #433028)

(?flags-flags:...)

The flags will apply only to the subpattern. Flags can be turned on or off.

Definition of ‘word’ character (issue #1693050)

The definition of a ‘word’ character has been expanded for Unicode. It conforms to the Unicode specification at http://www.unicode.org/reports/tr29/.

Variable-length lookbehind

A lookbehind can match a variable-length string.

Flags argument for regex.split, regex.sub and regex.subn (issue #3482)

regex.split, regex.sub and regex.subn support a ‘flags’ argument.

Pos and endpos arguments for regex.sub and regex.subn

regex.sub and regex.subn support ‘pos’ and ‘endpos’ arguments.

‘Overlapped’ argument for regex.findall and regex.finditer

regex.findall and regex.finditer support an ‘overlapped’ flag which permits overlapped matches.

Splititer

regex.splititer has been added. It’s a generator equivalent of regex.split.

Subscripting match objects for groups

A match object accepts access to the groups via subscripting and slicing:

>>> m = regex.search(r"(?P<before>.*?)(?P<num>\d+)(?P<after>.*)", "pqr123stu")
>>> print(m["before"])
pqr
>>> print(len(m))
4
>>> print(m[:])
('pqr123stu', 'pqr', '123', 'stu')

Named groups

Groups can be named with (?<name>...) as well as the existing (?P<name>...).

Group references

Groups can be referenced within a pattern with \g<name>. This also allows there to be more than 99 groups.

Named characters \N{name}

Named characters are supported. Note that only those known by Python’s Unicode database will be recognised.

Unicode codepoint properties, including scripts and blocks

\p{property=value}; \P{property=value}; \p{value} ; \P{value}

Many Unicode properties are supported, including blocks and scripts. \p{property=value} or \p{property:value} matches a character whose property property has value value. The inverse of \p{property=value} is \P{property=value} or \p{^property=value}.

If the short form \p{value} is used, the properties are checked in the order: General_Category, Script, Block, binary property:

  • Latin, the ‘Latin’ script (Script=Latin).

  • BasicLatin, the ‘BasicLatin’ block (Block=BasicLatin).

  • Alphabetic, the ‘Alphabetic’ binary property (Alphabetic=Yes).

A short form starting with Is indicates a script or binary property:

  • IsLatin, the ‘Latin’ script (Script=Latin).

  • IsAlphabetic, the ‘Alphabetic’ binary property (Alphabetic=Yes).

A short form starting with In indicates a block property:

  • InBasicLatin, the ‘BasicLatin’ block (Block=BasicLatin).

POSIX character classes

[[:alpha:]]; [[:^alpha:]]

POSIX character classes are supported. These are normally treated as an alternative form of \p{...}.

The exceptions are alnum, digit, punct and xdigit, whose definitions are different from those of Unicode.

[[:alnum:]] is equivalent to \p{posix_alnum}.

[[:digit:]] is equivalent to \p{posix_digit}.

[[:punct:]] is equivalent to \p{posix_punct}.

[[:xdigit:]] is equivalent to \p{posix_xdigit}.

Search anchor \G

A search anchor has been added. It matches at the position where each search started/continued and can be used for contiguous matches or in negative variable-length lookbehinds to limit how far back the lookbehind goes:

>>> regex.findall(r"\w{2}", "abcd ef")
['ab', 'cd', 'ef']
>>> regex.findall(r"\G\w{2}", "abcd ef")
['ab', 'cd']
  • The search starts at position 0 and matches ‘ab’.

  • The search continues at position 2 and matches ‘cd’.

  • The search continues at position 4 and fails to match any letters.

  • The anchor stops the search start position from being advanced, so there are no more results.

Reverse searching

Searches can also work backwards:

>>> regex.findall(r".", "abc")
['a', 'b', 'c']
>>> regex.findall(r"(?r).", "abc")
['c', 'b', 'a']

Note that the result of a reverse search is not necessarily the reverse of a forward search:

>>> regex.findall(r"..", "abcde")
['ab', 'cd']
>>> regex.findall(r"(?r)..", "abcde")
['de', 'bc']

Matching a single grapheme \X

The grapheme matcher is supported. It conforms to the Unicode specification at http://www.unicode.org/reports/tr29/.

Branch reset (?|...|...)

Group numbers will be reused across the alternatives, but groups with different names will have different group numbers.

>>> regex.match(r"(?|(first)|(second))", "first").groups()
('first',)
>>> regex.match(r"(?|(first)|(second))", "second").groups()
('second',)

Note that there is only one group.

Default Unicode word boundary

The WORD flag changes the definition of a ‘word boundary’ to that of a default Unicode word boundary. This applies to \b and \B.

Timeout

The matching methods and functions support timeouts. The timeout (in seconds) applies to the entire operation:

>>> from time import sleep
>>>
>>> def fast_replace(m):
...     return 'X'
...
>>> def slow_replace(m):
...     sleep(0.5)
...     return 'X'
...
>>> regex.sub(r'[a-z]', fast_replace, 'abcde', timeout=2)
'XXXXX'
>>> regex.sub(r'[a-z]', slow_replace, 'abcde', timeout=2)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python310\lib\site-packages\regex\regex.py", line 278, in sub
    return pat.sub(repl, string, count, pos, endpos, concurrent, timeout)
TimeoutError: regex timed out

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

regex-2026.3.32.tar.gz (415.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

regex-2026.3.32-cp314-cp314t-win_arm64.whl (275.7 kB view details)

Uploaded CPython 3.14tWindows ARM64

regex-2026.3.32-cp314-cp314t-win_amd64.whl (285.7 kB view details)

Uploaded CPython 3.14tWindows x86-64

regex-2026.3.32-cp314-cp314t-win32.whl (275.7 kB view details)

Uploaded CPython 3.14tWindows x86

regex-2026.3.32-cp314-cp314t-musllinux_1_2_x86_64.whl (801.9 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

regex-2026.3.32-cp314-cp314t-musllinux_1_2_s390x.whl (856.9 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ s390x

regex-2026.3.32-cp314-cp314t-musllinux_1_2_riscv64.whl (772.6 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ riscv64

regex-2026.3.32-cp314-cp314t-musllinux_1_2_ppc64le.whl (865.9 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ppc64le

regex-2026.3.32-cp314-cp314t-musllinux_1_2_aarch64.whl (800.2 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

regex-2026.3.32-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (786.6 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.31+ riscv64manylinux: glibc 2.39+ riscv64

regex-2026.3.32-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (814.8 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

regex-2026.3.32-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (916.7 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ s390xmanylinux: glibc 2.28+ s390x

regex-2026.3.32-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (872.2 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ppc64lemanylinux: glibc 2.28+ ppc64le

regex-2026.3.32-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (810.7 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

regex-2026.3.32-cp314-cp314t-macosx_11_0_arm64.whl (292.7 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

regex-2026.3.32-cp314-cp314t-macosx_10_13_x86_64.whl (294.0 kB view details)

Uploaded CPython 3.14tmacOS 10.13+ x86-64

regex-2026.3.32-cp314-cp314t-macosx_10_13_universal2.whl (494.5 kB view details)

Uploaded CPython 3.14tmacOS 10.13+ universal2 (ARM64, x86-64)

regex-2026.3.32-cp314-cp314-win_arm64.whl (273.7 kB view details)

Uploaded CPython 3.14Windows ARM64

regex-2026.3.32-cp314-cp314-win_amd64.whl (281.2 kB view details)

Uploaded CPython 3.14Windows x86-64

regex-2026.3.32-cp314-cp314-win32.whl (272.3 kB view details)

Uploaded CPython 3.14Windows x86

regex-2026.3.32-cp314-cp314-musllinux_1_2_x86_64.whl (788.1 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

regex-2026.3.32-cp314-cp314-musllinux_1_2_s390x.whl (851.5 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ s390x

regex-2026.3.32-cp314-cp314-musllinux_1_2_riscv64.whl (765.4 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ riscv64

regex-2026.3.32-cp314-cp314-musllinux_1_2_ppc64le.whl (861.4 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ppc64le

regex-2026.3.32-cp314-cp314-musllinux_1_2_aarch64.whl (786.4 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

regex-2026.3.32-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (776.3 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.31+ riscv64manylinux: glibc 2.39+ riscv64

regex-2026.3.32-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (800.9 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

regex-2026.3.32-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (912.8 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ s390xmanylinux: glibc 2.28+ s390x

regex-2026.3.32-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (866.6 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ppc64lemanylinux: glibc 2.28+ ppc64le

regex-2026.3.32-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (796.7 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

regex-2026.3.32-cp314-cp314-macosx_11_0_arm64.whl (289.8 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

regex-2026.3.32-cp314-cp314-macosx_10_13_x86_64.whl (291.9 kB view details)

Uploaded CPython 3.14macOS 10.13+ x86-64

regex-2026.3.32-cp314-cp314-macosx_10_13_universal2.whl (490.4 kB view details)

Uploaded CPython 3.14macOS 10.13+ universal2 (ARM64, x86-64)

regex-2026.3.32-cp313-cp313t-win_arm64.whl (272.4 kB view details)

Uploaded CPython 3.13tWindows ARM64

regex-2026.3.32-cp313-cp313t-win_amd64.whl (281.3 kB view details)

Uploaded CPython 3.13tWindows x86-64

regex-2026.3.32-cp313-cp313t-win32.whl (269.9 kB view details)

Uploaded CPython 3.13tWindows x86

regex-2026.3.32-cp313-cp313t-musllinux_1_2_x86_64.whl (801.9 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

regex-2026.3.32-cp313-cp313t-musllinux_1_2_s390x.whl (856.8 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ s390x

regex-2026.3.32-cp313-cp313t-musllinux_1_2_riscv64.whl (772.5 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ riscv64

regex-2026.3.32-cp313-cp313t-musllinux_1_2_ppc64le.whl (865.8 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ppc64le

regex-2026.3.32-cp313-cp313t-musllinux_1_2_aarch64.whl (800.0 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

regex-2026.3.32-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (786.3 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.31+ riscv64manylinux: glibc 2.39+ riscv64

regex-2026.3.32-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (815.0 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

regex-2026.3.32-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (916.5 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ s390xmanylinux: glibc 2.28+ s390x

regex-2026.3.32-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (871.9 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ppc64lemanylinux: glibc 2.28+ ppc64le

regex-2026.3.32-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (810.5 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

regex-2026.3.32-cp313-cp313t-macosx_11_0_arm64.whl (292.6 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

regex-2026.3.32-cp313-cp313t-macosx_10_13_x86_64.whl (294.0 kB view details)

Uploaded CPython 3.13tmacOS 10.13+ x86-64

regex-2026.3.32-cp313-cp313t-macosx_10_13_universal2.whl (494.5 kB view details)

Uploaded CPython 3.13tmacOS 10.13+ universal2 (ARM64, x86-64)

regex-2026.3.32-cp313-cp313-win_arm64.whl (270.6 kB view details)

Uploaded CPython 3.13Windows ARM64

regex-2026.3.32-cp313-cp313-win_amd64.whl (278.0 kB view details)

Uploaded CPython 3.13Windows x86-64

regex-2026.3.32-cp313-cp313-win32.whl (266.8 kB view details)

Uploaded CPython 3.13Windows x86

regex-2026.3.32-cp313-cp313-musllinux_1_2_x86_64.whl (788.4 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

regex-2026.3.32-cp313-cp313-musllinux_1_2_s390x.whl (851.9 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ s390x

regex-2026.3.32-cp313-cp313-musllinux_1_2_riscv64.whl (765.3 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ riscv64

regex-2026.3.32-cp313-cp313-musllinux_1_2_ppc64le.whl (860.7 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ppc64le

regex-2026.3.32-cp313-cp313-musllinux_1_2_aarch64.whl (785.9 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

regex-2026.3.32-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (776.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.31+ riscv64manylinux: glibc 2.39+ riscv64

regex-2026.3.32-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (801.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

regex-2026.3.32-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (913.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ s390xmanylinux: glibc 2.28+ s390x

regex-2026.3.32-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (865.9 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ppc64lemanylinux: glibc 2.28+ ppc64le

regex-2026.3.32-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (796.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

regex-2026.3.32-cp313-cp313-macosx_11_0_arm64.whl (289.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

regex-2026.3.32-cp313-cp313-macosx_10_13_x86_64.whl (292.0 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

regex-2026.3.32-cp313-cp313-macosx_10_13_universal2.whl (490.4 kB view details)

Uploaded CPython 3.13macOS 10.13+ universal2 (ARM64, x86-64)

regex-2026.3.32-cp312-cp312-win_arm64.whl (270.7 kB view details)

Uploaded CPython 3.12Windows ARM64

regex-2026.3.32-cp312-cp312-win_amd64.whl (278.0 kB view details)

Uploaded CPython 3.12Windows x86-64

regex-2026.3.32-cp312-cp312-win32.whl (266.8 kB view details)

Uploaded CPython 3.12Windows x86

regex-2026.3.32-cp312-cp312-musllinux_1_2_x86_64.whl (788.3 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

regex-2026.3.32-cp312-cp312-musllinux_1_2_s390x.whl (852.0 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ s390x

regex-2026.3.32-cp312-cp312-musllinux_1_2_riscv64.whl (765.3 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ riscv64

regex-2026.3.32-cp312-cp312-musllinux_1_2_ppc64le.whl (860.6 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ppc64le

regex-2026.3.32-cp312-cp312-musllinux_1_2_aarch64.whl (785.8 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

regex-2026.3.32-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (776.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.31+ riscv64manylinux: glibc 2.39+ riscv64

regex-2026.3.32-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (801.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

regex-2026.3.32-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (913.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ s390xmanylinux: glibc 2.28+ s390x

regex-2026.3.32-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (865.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ppc64lemanylinux: glibc 2.28+ ppc64le

regex-2026.3.32-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (796.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

regex-2026.3.32-cp312-cp312-macosx_11_0_arm64.whl (289.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

regex-2026.3.32-cp312-cp312-macosx_10_13_x86_64.whl (292.1 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

regex-2026.3.32-cp312-cp312-macosx_10_13_universal2.whl (490.6 kB view details)

Uploaded CPython 3.12macOS 10.13+ universal2 (ARM64, x86-64)

regex-2026.3.32-cp311-cp311-win_arm64.whl (270.6 kB view details)

Uploaded CPython 3.11Windows ARM64

regex-2026.3.32-cp311-cp311-win_amd64.whl (278.6 kB view details)

Uploaded CPython 3.11Windows x86-64

regex-2026.3.32-cp311-cp311-win32.whl (266.4 kB view details)

Uploaded CPython 3.11Windows x86

regex-2026.3.32-cp311-cp311-musllinux_1_2_x86_64.whl (785.2 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

regex-2026.3.32-cp311-cp311-musllinux_1_2_s390x.whl (845.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ s390x

regex-2026.3.32-cp311-cp311-musllinux_1_2_riscv64.whl (762.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ riscv64

regex-2026.3.32-cp311-cp311-musllinux_1_2_ppc64le.whl (856.0 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ppc64le

regex-2026.3.32-cp311-cp311-musllinux_1_2_aarch64.whl (781.4 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

regex-2026.3.32-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (774.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.31+ riscv64manylinux: glibc 2.39+ riscv64

regex-2026.3.32-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (798.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

regex-2026.3.32-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (906.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ s390xmanylinux: glibc 2.28+ s390x

regex-2026.3.32-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (862.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ppc64lemanylinux: glibc 2.28+ ppc64le

regex-2026.3.32-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (790.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

regex-2026.3.32-cp311-cp311-macosx_11_0_arm64.whl (289.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

regex-2026.3.32-cp311-cp311-macosx_10_9_x86_64.whl (291.3 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

regex-2026.3.32-cp311-cp311-macosx_10_9_universal2.whl (489.6 kB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

regex-2026.3.32-cp310-cp310-win_arm64.whl (270.6 kB view details)

Uploaded CPython 3.10Windows ARM64

regex-2026.3.32-cp310-cp310-win_amd64.whl (278.6 kB view details)

Uploaded CPython 3.10Windows x86-64

regex-2026.3.32-cp310-cp310-win32.whl (266.3 kB view details)

Uploaded CPython 3.10Windows x86

regex-2026.3.32-cp310-cp310-musllinux_1_2_x86_64.whl (778.5 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

regex-2026.3.32-cp310-cp310-musllinux_1_2_s390x.whl (838.5 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ s390x

regex-2026.3.32-cp310-cp310-musllinux_1_2_riscv64.whl (757.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ riscv64

regex-2026.3.32-cp310-cp310-musllinux_1_2_ppc64le.whl (849.4 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ppc64le

regex-2026.3.32-cp310-cp310-musllinux_1_2_aarch64.whl (774.4 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

regex-2026.3.32-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (770.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.31+ riscv64manylinux: glibc 2.39+ riscv64

regex-2026.3.32-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (786.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

regex-2026.3.32-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (790.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

regex-2026.3.32-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (898.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ s390xmanylinux: glibc 2.28+ s390x

regex-2026.3.32-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (854.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ppc64lemanylinux: glibc 2.28+ ppc64le

regex-2026.3.32-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (786.4 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

regex-2026.3.32-cp310-cp310-macosx_11_0_arm64.whl (289.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

regex-2026.3.32-cp310-cp310-macosx_10_9_x86_64.whl (291.3 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

regex-2026.3.32-cp310-cp310-macosx_10_9_universal2.whl (489.6 kB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file regex-2026.3.32.tar.gz.

File metadata

  • Download URL: regex-2026.3.32.tar.gz
  • Upload date:
  • Size: 415.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32.tar.gz
Algorithm Hash digest
SHA256 f1574566457161678297a116fa5d1556c5a4159d64c5ff7c760e7c564bf66f16
MD5 a3aac50cfa0ec7acbaafcaf98fb6ad75
BLAKE2b-256 81935ab3e899c47fa7994e524447135a71cd121685a35c8fe35029005f8b236f

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-win_arm64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp314-cp314t-win_arm64.whl
  • Upload date:
  • Size: 275.7 kB
  • Tags: CPython 3.14t, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 1a6ac1ed758902e664e0d95c1ee5991aa6fb355423f378ed184c6ec47a1ec0e9
MD5 15a95ec99953d22031dfaf15f4712c38
BLAKE2b-256 7e91043d9a00d6123c5fa22a3dc96b10445ce434a8110e1d5e53efb01f243c8b

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 285.7 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 67015a8162d413af9e3309d9a24e385816666fbf09e48e3ec43342c8536f7df6
MD5 5a43b8f73ac2bea35e1658578749c1db
BLAKE2b-256 c22b616d31b125ca76079d74d6b1d84ec0860ffdb41c379151135d06e35a8633

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-win32.whl.

File metadata

  • Download URL: regex-2026.3.32-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 275.7 kB
  • Tags: CPython 3.14t, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 e480d3dac06c89bc2e0fd87524cc38c546ac8b4a38177650745e64acbbcfdeba
MD5 a3d0a4563a2982288626d73e8ebe8322
BLAKE2b-256 b5db1a23f767fa250844772a9464306d34e0fafe2c317303b88a1415096b6324

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 88ebc0783907468f17fca3d7821b30f9c21865a721144eb498cb0ff99a67bcac
MD5 8c29bd24d0d32f7583e40e4f276dded0
BLAKE2b-256 97b10dc1d361be80ec1b8b707ada041090181133a7a29d438e432260a4b26f9a

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 6062c4ef581a3e9e503dccf4e1b7f2d33fdc1c13ad510b287741ac73bc4c6b27
MD5 3c915daad82c62c1609967248bbb0de3
BLAKE2b-256 24411ef8b4811355ad7b9d7579d3aeca00f18b7bc043ace26c8c609b9287346d

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-musllinux_1_2_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 09e26cad1544d856da85881ad292797289e4406338afe98163f3db9f7fac816c
MD5 67b9c55c6669127a0098cf0814d2b3cd
BLAKE2b-256 459d1acbcce765044ac0c87f453f4876e0897f7a61c10315262f960184310798

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 0cec365d44835b043d7b3266487797639d07d621bec9dc0ea224b00775797cc1
MD5 2095ac959793468ed6f334c06cf36e60
BLAKE2b-256 ca17b10745adeca5b8d52da050e7c746137f5d01dabc6dbbe6e8d9d821dc65c1

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8e4c8fa46aad1a11ae2f8fcd1c90b9d55e18925829ac0d98c5bb107f93351745
MD5 d4d24fee9061fe19ae486b7fc6ce210f
BLAKE2b-256 ea7228295068c92dbd6d3ce4fd22554345cf504e957cc57dadeda4a64fa86a57

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 3ea568832eca219c2be1721afa073c1c9eb8f98a9733fdedd0a9747639fc22a5
MD5 5ab8894d4fad21a0620f34c5dd4b3812
BLAKE2b-256 a6d97dacb34c43adaeb954518d851f3e5d3ce495ac00a9d6010e3b4b59917c4a

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8aaf8ee8f34b677f90742ca089b9c83d64bdc410528767273c816a863ed57327
MD5 87a711dcf2c7d7022fb6f7a6122059b4
BLAKE2b-256 42e21d2b48b8e94debfffc6fefb84d2a86a178cc208652a1d6493d5f29821c70

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 3c0bbfbd38506e1ea96a85da6782577f06239cb9fcf9696f1ea537c980c0680b
MD5 4d277825dedad808aebba59ac5f5e33e
BLAKE2b-256 6c5b1341287887ac982ed9f5f60125e440513ffe354aa7e3681940495af7c12a

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 8a4a3189a99ecdd1c13f42513ab3fc7fa8311b38ba7596dd98537acb8cd9acc3
MD5 6ded0e913f748d49f45f0e91fe567d5c
BLAKE2b-256 b29b438763a20d22cd1f65f95c8f030dd25df2d80a941068a891d21a5f240456

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5bf2f3c2c5bd8360d335c7dcd4a9006cf1dabae063ee2558ee1b07bbc8a20d88
MD5 d9bef42aedc6cda19fd12b5f43b9f92d
BLAKE2b-256 f0f85006b70291469d4174dd66ad162802e2f68419c0f2a7952d0c76c1288cfa

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 03c2ebd15ff51e7b13bb3dc28dd5ac18cd39e59ebb40430b14ae1a19e833cff1
MD5 02ad10901d5ab65a0a0c0341fa02967f
BLAKE2b-256 60e40cb32203c1aebad0577fcd5b9af1fe764869e617d5234bc6a0ad284299ea

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 51a93452034d671b0e21b883d48ea66c5d6a05620ee16a9d3f229e828568f3f0
MD5 3260103bb7c202db0a6c4edd653cf9ac
BLAKE2b-256 1653a922e6b24694d70bdd68fc3fd076950e15b1b418cff9d2cc362b3968d86f

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314t-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314t-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 51fb7e26f91f9091fd8ec6a946f99b15d3bc3667cb5ddc73dd6cb2222dd4a1cc
MD5 4bd67947e24708001d3c2f0c827488e5
BLAKE2b-256 306e87caccd608837a1fa4f8c7edc48e206103452b9bbc94fc724fa39340e807

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-win_arm64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp314-cp314-win_arm64.whl
  • Upload date:
  • Size: 273.7 kB
  • Tags: CPython 3.14, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 1ca02ff0ef33e9d8276a1fcd6d90ff6ea055a32c9149c0050b5b67e26c6d2c51
MD5 ed284cab3691cadcc92114643931ff66
BLAKE2b-256 6ce489038a028cb68e719fa03ab1ad603649fc199bcda12270d2ac7b471b8f5d

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 281.2 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 245667ad430745bae6a1e41081872d25819d86fbd9e0eec485ba00d9f78ad43d
MD5 22c5d293cb481549c56bea29cb3adb07
BLAKE2b-256 2aec32bbcc42366097a8cea2c481e02964be6c6fa5ccfb0fa9581686af0bec5f

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-win32.whl.

File metadata

  • Download URL: regex-2026.3.32-cp314-cp314-win32.whl
  • Upload date:
  • Size: 272.3 kB
  • Tags: CPython 3.14, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 110ba4920721374d16c4c8ea7ce27b09546d43e16aea1d7f43681b5b8f80ba61
MD5 8d5b9e8b597e2a174c6740048b79523b
BLAKE2b-256 f05bb23c72f6d607cbb24ef42acf0c7c2ef4eee1377a9f7ba43b312f889edfbb

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 10fb2aaae1aaadf7d43c9f3c2450404253697bf8b9ce360bd5418d1d16292298
MD5 7768c093916fe26befaabcb289fa63db
BLAKE2b-256 e8d61e9c991c32022a9312e9124cc974961b3a2501338de2cd1cce75a3612d7a

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 b193ed199848aa96618cd5959c1582a0bf23cd698b0b900cb0ffe81b02c8659c
MD5 df6ae8dcf5376c15a3d051e118c0bfb4
BLAKE2b-256 a3dafd65d68b897f8b52b1390d20d776fa753582484724a9cb4f4c26de657ae5

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-musllinux_1_2_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 9b9118a78e031a2e4709cd2fcc3028432e89b718db70073a8da574c249b5b249
MD5 564d93ef03d6117b651b4d8ca2aa76e1
BLAKE2b-256 45b1e5076fbe45b8fb39672584b1b606d512f5bd3a43155be68a95f6b88c1fc5

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 1cb22fa9ee6a0acb22fc9aecce5f9995fe4d2426ed849357d499d62608fbd7f9
MD5 cd877a0e41b4e321e20fedb832e8ea68
BLAKE2b-256 0c78be0a6531f8db426e8e60d6356aeef8e9cc3f541655a648c4968b63c87a88

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f26262900edd16272b6360014495e8d68379c6c6e95983f9b7b322dc928a1194
MD5 4d003b54aa6a1e4bc13d3be391fe325e
BLAKE2b-256 2680114a61bd25dec7d1070930eaef82aadf9b05961a37629e7cca7bc3fc2257

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 c1cecea3e477af105f32ef2119b8d895f297492e41d317e60d474bc4bffd62ff
MD5 a95425348cba4eeb7a8c310a00ee1713
BLAKE2b-256 49e50be716eb2c0b2ae3a439e44432534e82b2f81848af64cb21c0473ad8ae46

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a094e9dcafedfb9d333db5cf880304946683f43a6582bb86688f123335122929
MD5 cc3459b80a12ee90a5bd0af9d78e226e
BLAKE2b-256 41ab2c1bc8ab99f63cdabdbc7823af8f4cfcd6ddbb2babf01861826c3f1ad44d

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 4f9ae4755fa90f1dc2d0d393d572ebc134c0fe30fcfc0ab7e67c1db15f192041
MD5 b4d585856750ab03396a350d0c6b58f3
BLAKE2b-256 d7b99921a31931d0bc3416ac30205471e0e2ed60dcbd16fc922bbd69b427322b

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 3e221b615f83b15887636fcb90ed21f1a19541366f8b7ba14ba1ad8304f4ded4
MD5 5b119b00d2f59e1f33244a6c3075c873
BLAKE2b-256 8031c2d7d9a5671e111a2c16d57e0cb03e1ce35b28a115901590528aa928bb5b

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 12917c6c6813ffcdfb11680a04e4d63c5532b88cf089f844721c5f41f41a63ad
MD5 560c66850d3b683c22b32296033dd3a4
BLAKE2b-256 8370bd76069a0304e924682b2efd8683a01617a7e1da9b651af73039d8da76a4

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 631f7d95c83f42bccfe18946a38ad27ff6b6717fb4807e60cf24860b5eb277fc
MD5 b4c6ddbc73f0bd0d83b4cdb52f280a2e
BLAKE2b-256 069d77f684d90ffe3e99b828d3cabb87a0f1601d2b9decd1333ff345809b1d02

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d76d62909bfb14521c3f7cfd5b94c0c75ec94b0a11f647d2f604998962ec7b6c
MD5 1972c2323a7ef37ccff9c22a5787d723
BLAKE2b-256 6172039d9164817ee298f2a2d0246001afe662241dcbec0eedd1fe03e2a2555e

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp314-cp314-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp314-cp314-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 a416ee898ecbc5d8b283223b4cf4d560f93244f6f7615c1bd67359744b00c166
MD5 3ad8bcd170f3bc3d45a5ded41d7328e7
BLAKE2b-256 3268ff024bf6131b7446a791a636dbbb7fa732d586f33b276d84b3460ea49393

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-win_arm64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp313-cp313t-win_arm64.whl
  • Upload date:
  • Size: 272.4 kB
  • Tags: CPython 3.13t, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-win_arm64.whl
Algorithm Hash digest
SHA256 ace48c5e157c1e58b7de633c5e257285ce85e567ac500c833349c363b3df69d4
MD5 d8acd4dae1912a262e8cde8665ed27bb
BLAKE2b-256 c647db4446faaea8d01c8315c9c89c7dc6abbb3305e8e712e9b23936095c4d58

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-win_amd64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp313-cp313t-win_amd64.whl
  • Upload date:
  • Size: 281.3 kB
  • Tags: CPython 3.13t, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 c940e00e8d3d10932c929d4b8657c2ea47d2560f31874c3e174c0d3488e8b865
MD5 01427a9b28ffb1f4cc7fe90ca872be07
BLAKE2b-256 134777f16b5ad9f10ca574f03d84a354b359b0ac33f85054f2f2daafc9f7b807

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-win32.whl.

File metadata

  • Download URL: regex-2026.3.32-cp313-cp313t-win32.whl
  • Upload date:
  • Size: 269.9 kB
  • Tags: CPython 3.13t, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-win32.whl
Algorithm Hash digest
SHA256 9cf7036dfa2370ccc8651521fcbb40391974841119e9982fa312b552929e6c85
MD5 adc8da0edb6169b76ac2157469524c8e
BLAKE2b-256 8a060fa9daca59d07b6aabd8e0468d3b86fd578576a157206fbcddbfc2298f7d

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ef250a3f5e93182193f5c927c5e9575b2cb14b80d03e258bc0b89cc5de076b60
MD5 d5495c016449f6fe62251aa51193d059
BLAKE2b-256 37e8ee0e7d14de1fc6582d5782f072db6c61465a38a4142f88e175dda494b536

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 e3e5d1802cba785210a4a800e63fcee7a228649a880f3bf7f2aadccb151a834b
MD5 cca4128d6b9e333122724e3ddc6ae052
BLAKE2b-256 f4f654bd83ec46ac037de2beb049afc9dd5d2769c6ecaadf7856254ce610e62a

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-musllinux_1_2_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 4bc32b4dbdb4f9f300cf9f38f8ea2ce9511a068ffaa45ac1373ee7a943f1d810
MD5 7a655289c2f0193e8355e5c7a64569c7
BLAKE2b-256 4810306f477a509f4eed699071b1f031d89edd5a2b5fa28c8ede5b2638eaba82

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 e50af656c15e2723eeb7279c0837e07accc594b95ec18b86821a4d44b51b24bf
MD5 e8bf0df64aa789a049acd14e20a580e7
BLAKE2b-256 3e2c77d9ca2c9df483b51b4b1291c96d79c9ae301077841c4db39bc822f6b4c6

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 85c9b0c131427470a6423baa0a9330be6fd8c3630cc3ee6fdee03360724cbec5
MD5 e32707211780381cd53af61b89fb9c66
BLAKE2b-256 eb2f4eb8abd705236402b4fe0e130971634deffb1855e2028bf02a2b7c0e841c

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 5c35d097f509cf7e40d20d5bee548d35d6049b36eb9965e8d43e4659923405b9
MD5 c2b5c60ee983c9c89586bd232154cae4
BLAKE2b-256 2caf2dfddc64074bd9b70e27e170ee9db900542e2870210b489ad4471416ba86

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7cdd508664430dd51b8888deb6c5b416d8de046b2e11837254378d31febe4a98
MD5 1cf25ac57b7e08133fc93fbc9e663c92
BLAKE2b-256 c8c06379d7f5b59ff0656ba49cf666d5013ecee55e83245275b310b0ffc79143

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 f28eac18a8733a124444643a66ac96fef2c0ad65f50034e0a043b90333dc677f
MD5 4f2aeea343c9665afabf64ec6ccbe509
BLAKE2b-256 8385aa8ad3977b9399861db3df62b33fe5fef6932ee23a1b9f4f357f58f2094b

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 b565f25171e04d4fad950d1fa837133e3af6ea6f509d96166eed745eb0cf63bc
MD5 9555af614c6101c27930f0c0db3a554f
BLAKE2b-256 fd494dae7b000659f611b17b9c1541fba800b0569e4060debc4635ef1b23982c

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b953d9d496d19786f4d46e6ba4b386c6e493e81e40f9c5392332458183b0599d
MD5 ba31750f507fa57c56c2445bb71a79f1
BLAKE2b-256 7f7bd7729fe294e23e9c7c3871cb69d49059fa7d65fd11e437a2cbea43f6615d

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b8fca73e16c49dd972ce3a88278dfa5b93bf91ddef332a46e9443abe21ca2f7c
MD5 76d02333d26ea8ab684d2e52121ef6ce
BLAKE2b-256 e1988752e18bb87a2fe728b73b0f83c082eb162a470766063f8028759fb26844

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 b6f366a5ef66a2df4d9e68035cfe9f0eb8473cdfb922c37fac1d169b468607b0
MD5 1b990c6f04870a9c424fbc015b0ce7f1
BLAKE2b-256 5f276e29ece8c9ce01001ece1137fa21c8707529c2305b22828f63623b0eb262

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313t-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313t-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 5d86e3fb08c94f084a625c8dc2132a79a3a111c8bf6e2bc59351fa61753c2f6e
MD5 bba1fb12a477bfb45ca89df75a76948f
BLAKE2b-256 5808e38372da599dc1c39c599907ec535016d110034bd3701ce36554f59767ef

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-win_arm64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 270.6 kB
  • Tags: CPython 3.13, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 b2e9c2ea2e93223579308263f359eab8837dc340530b860cb59b713651889f14
MD5 377430ed9a6a1eef014c10d7b56ff6c6
BLAKE2b-256 ab1c80a86dbb2b416fec003b1801462bdcebbf1d43202ed5acb176e99c1ba369

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 278.0 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 3c054e39a9f85a3d76c62a1d50c626c5e9306964eaa675c53f61ff7ec1204bbb
MD5 6eddda4d37d5ad72165fbc4ae222adc6
BLAKE2b-256 b93713e4e56adc16ba607cffa1fe880f233eb9ded8ab8a8580619683c9e4ce48

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-win32.whl.

File metadata

  • Download URL: regex-2026.3.32-cp313-cp313-win32.whl
  • Upload date:
  • Size: 266.8 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 d21a07edddb3e0ca12a8b8712abc8452481c3d3db19ae87fc94e9842d005964b
MD5 8fe1ca86292de49eb276f8dc9b7b8481
BLAKE2b-256 cfdf692227d23535a50604333068b39eb262626db780ab1e1b19d83fc66853aa

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 847087abe98b3c1ebf1eb49d6ef320dbba75a83ee4f83c94704580f1df007dd4
MD5 9c35a95357d499840c6f853d77738164
BLAKE2b-256 f48e03d392b26679914ccf21f83d18ad4443232d2f8c3e2c30a962d4e3918d9c

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 fc8ced733d6cd9af5e412f256a32f7c61cd2d7371280a65c689939ac4572499f
MD5 986d639f54423965ebd2a109a6e94e49
BLAKE2b-256 89a7d8a9c270916107a501fca63b748547c6c77e570d19f16a29b557ce734f3d

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-musllinux_1_2_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 2820d2231885e97aff0fcf230a19ebd5d2b5b8a1ba338c20deb34f16db1c7897
MD5 e07d651a7a89bfbf4a96d7e99e7753ef
BLAKE2b-256 bf688d85f98c2443469facabef62b82b851d369b13f92bec2ca7a3808deaa47b

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 d478a2ca902b6ef28ffc9521e5f0f728d036abe35c0b250ee8ae78cfe7c5e44e
MD5 fe26ec5413e7220baf4ed6d89b043780
BLAKE2b-256 5312c5bab6cc679ad79a45427a98c4e70809586ac963c5ad54a9217533c4763e

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 c1d7fa44aece1fa02b8927441614c96520253a5cad6a96994e3a81e060feed55
MD5 ce97541bf82ebd894070c82c21c74822
BLAKE2b-256 3202945a6a2348ca1c6608cb1747275c8affd2ccd957d4885c25218a86377912

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 4d082be64e51671dd5ee1c208c92da2ddda0f2f20d8ef387e57634f7e97b6aae
MD5 7072afc1cd6c31678466344d54a25aef
BLAKE2b-256 9f05986cdf8d12693451f5889aaf4ea4f65b2c49b1152ae814fa1fb75439e40b

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a5d88fa37ba5e8a80ca8d956b9ea03805cfa460223ac94b7d4854ee5e30f3173
MD5 0415c9d4f9f95b1555cee015457cbec2
BLAKE2b-256 0ff8acf1eb80f58852e85bd39a6ddfa78ce2243ddc8de8da7582e6ba657da593

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 987cdfcfb97a249abc3601ad53c7de5c370529f1981e4c8c46793e4a1e1bfe8e
MD5 7165dbeec7b354efbc49503050aef380
BLAKE2b-256 dc67828d8095501f237b83f630d4069eea8c0e5cb6a204e859cf0b67c223ce12

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 bbc458a292aee57d572075f22c035fa32969cdb7987d454e3e34d45a40a0a8b4
MD5 317cb2efb4b80f04a6ab1430343abb7e
BLAKE2b-256 51d732b05aa8fde7789ba316533c0f30e87b6b5d38d6d7f8765eadc5aab84671

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8fc918cd003ba0d066bf0003deb05a259baaaab4dc9bd4f1207bbbe64224857a
MD5 62a22c083235ea5f1d1aa0e087bf4bc0
BLAKE2b-256 fd0db47a0e68bc511c195ff129c0311a4cd79b954b8676193a9d03a97c623a91

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 844d88509c968dd44b30daeefac72b038b1bf31ac372d5106358ab01d393c48b
MD5 ab5bc883ccbdc9afe8e1cf75cac2b6b1
BLAKE2b-256 e7d8ba0f8f81f88cd20c0b27acc123561ac5495ea33f800f0b8ebed2038b23eb

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 0f21ae18dfd15752cdd98d03cbd7a3640be826bfd58482a93f730dbd24d7b9fb
MD5 9e18be06596c363d47c53884dcc6b298
BLAKE2b-256 5b0bf62b0ce79eb83ca82fffea1736289d29bc24400355968301406789bcebd2

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp313-cp313-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 c6d9c6e783b348f719b6118bb3f187b2e138e3112576c9679eb458cc8b2e164b
MD5 e25c6aa17dbcfeac21225719b814d1c6
BLAKE2b-256 bdba9c1819f302b42b5fbd4139ead6280e9ec37d19bbe33379df0039b2a57bb4

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 270.7 kB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 89e50667e7e8c0e7903e4d644a2764fffe9a3a5d6578f72ab7a7b4205bf204b7
MD5 5054eafab170add5a0d8873368c64be2
BLAKE2b-256 315f27f1e0b1eea4faa99c66daca34130af20c44fae0237bbc98b87999dbc4a8

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 278.0 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c9f261ad3cd97257dc1d9355bfbaa7dd703e06574bffa0fa8fe1e31da915ee38
MD5 67b1d2f90d12b0be1e84753b8324c525
BLAKE2b-256 00e53be71c781a031db5df00735b613895ad5fdbf86c6e3bbea5fbbd7bfb5902

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-win32.whl.

File metadata

  • Download URL: regex-2026.3.32-cp312-cp312-win32.whl
  • Upload date:
  • Size: 266.8 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 d363660f9ef8c734495598d2f3e527fb41f745c73159dc0d743402f049fb6836
MD5 a43b065c50d0636fd8999a8a63c858d7
BLAKE2b-256 21255355908f479d0dc13d044f88270cdcabc8723efc12e4c2b19e5a94ff1a96

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b56993a7aeb4140c4770f4f7965c9e5af4f024457d06e23c01b0d47501cb18ed
MD5 cb3f6df2e70bba1e1ec1a62540033423
BLAKE2b-256 18f404ed04ebf335a44083695c22772be6a42efa31900415555563acf02cb4de

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 5336b1506142eb0f23c96fb4a34b37c4fefd4fed2a7042069f3c8058efe17855
MD5 5aff923bb9d89ae02536778acb53ed24
BLAKE2b-256 b4da21f5e2a35a191b27e5a47cccb3914c99e139b49b1342d3f36e64e8cc60f7

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-musllinux_1_2_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 b7836aa13721dbdef658aebd11f60d00de633a95726521860fe1f6be75fa225a
MD5 c44c5fe78aa5e62528f855f7ff9eb499
BLAKE2b-256 0428bdd2fc0c055a1b15702bd4084829bbb6b06095f27990e5bee52b2898ea03

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 f785f44a44702dea89b28bce5bc82552490694ce4e144e21a4f0545e364d2150
MD5 ac9a9b5db223f0d22f88a730738edf18
BLAKE2b-256 e053fa226b72989b5b93db6926fab5478115e085dfcf077e18d2cb386be0fd23

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 66d3126afe7eac41759cd5f0b3b246598086e88e70527c0d68c9e615b81771c4
MD5 eff1aa10bb420027169843f8e7b98dc0
BLAKE2b-256 b6c8d833397b70cd1bacfcdc0a611f0e2c1f5b91fee8eedd88affcee770cbbb6

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 2ffbadc647325dd4e3118269bda93ded1eb5f5b0c3b7ba79a3da9fbd04f248e9
MD5 d30e2f5304d3973c9ad20fc20719ae37
BLAKE2b-256 ff2774c986061380e1811a46cf04cdf9c939db9f8c0e63953eddfe37ffd633ea

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f54840bea73541652f1170dc63402a5b776fc851ad36a842da9e5163c1f504a0
MD5 83c41eb085c0abfafa75845f5cb765b8
BLAKE2b-256 0afe661043d1c263b0d9d10c6ff4e9c9745f3df9641c62b51f96a3473638e7ce

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 b3aa21bad31db904e0b9055e12c8282df62d43169c4a9d2929407060066ebc74
MD5 4ab7fa07a686abac9569a8990f20202e
BLAKE2b-256 c2590677bc44f2c28305edcabc11933777b9ad34e9e8ded7ba573d24e4bc3ee7

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 e83ce8008b48762be296f1401f19afd9ea29f3d035d1974e0cecb74e9afbd1df
MD5 b232bd1aad8bb656da28764840ff3e70
BLAKE2b-256 278a67fcbca511b792107540181ee0690df6de877bfbcb41b7ecae7028025ca5

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 66a5083c3ffe5a5a95f8281ea47a88072d4f24001d562d1d9d28d4cdc005fec5
MD5 8918331eb337b713d8325488cce6cf1f
BLAKE2b-256 4acf1955bb5567bc491bd63068e17f75ab0c9ff5e9d08466beec7e347f5e768d

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 db976be51375bca900e008941639448d148c655c9545071965d0571ecc04f5d0
MD5 d447bbeb6f4d048cc3f3340a58c6329c
BLAKE2b-256 e3ec988486058ef49eb931476419bae00f164c4ceb44787c45dc7a54b7de0ea4

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 3f5747501b69299c6b0b047853771e4ed390510bada68cb16da9c9c2078343f7
MD5 7c3671f64e9dd78e556fa9fae0d9b036
BLAKE2b-256 920a7dcffeebe0fcac45a1f9caf80712002d3cbd66d7d69d719315ee142b280f

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp312-cp312-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 ad8d372587e659940568afd009afeb72be939c769c552c9b28773d0337251391
MD5 9837b75e64cccd651fafdd05196bd136
BLAKE2b-256 389469492c45b0e61b027109d8433a5c3d4f7a90709184c057c7cfc60acb1bfa

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-win_arm64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 270.6 kB
  • Tags: CPython 3.11, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 ded4fc0edf3de792850cb8b04bbf3c5bd725eeaf9df4c27aad510f6eed9c4e19
MD5 5b9c9ab35b82d028bbf15e7d30216b40
BLAKE2b-256 0a126a67bd509f38aec021d63096dbc884f39473e92adeb1e35d6fb6d89cbd59

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 278.6 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8fe14e24124ef41220e5992a0f09432f890037df6f93fd3d6b7a0feff2db16b2
MD5 35e1686fe5dc85e82919570da44913ad
BLAKE2b-256 627427c3cdb3a3fbbf67f7231b872877416ec817ae84271573d2fd14bf8723d3

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-win32.whl.

File metadata

  • Download URL: regex-2026.3.32-cp311-cp311-win32.whl
  • Upload date:
  • Size: 266.4 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 c60f1de066eb5a0fd8ee5974de4194bb1c2e7692941458807162ffbc39887303
MD5 ca0f6bcb5bd67f57e2acea01a2ae4855
BLAKE2b-256 994d23d992ab4115456fec520d6c3aae39e0e33739b244ddb39aa4102a0f7ef0

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c1ed17104d1be7f807fdec35ec99777168dd793a09510d753f8710590ba54cdd
MD5 bd198bceb0540d64f3eb79d5a89d5b26
BLAKE2b-256 06538afcf0fd4bd55440b48442c86cddfe61b0d21c92d96e384c0c47d769f4c3

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 b6acb765e7c1f2fa08ac9057a33595e26104d7d67046becae184a8f100932dd9
MD5 d74ef084e667feebcaea39fdafe46f0f
BLAKE2b-256 4004808ab0462a2d19b295a3b42134f5183692f798addfe6a8b6aa5f7c7a35b2

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-musllinux_1_2_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 567b57eb987547a23306444e4f6f85d4314f83e65c71d320d898aa7550550443
MD5 cdbc9a1d0a8ad296d8d1b2f8d1cd0f75
BLAKE2b-256 6d99850feec404a02b62e048718ec1b4b98b5c3848cd9ca2316d0bdb65a53f6a

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 2dcca2bceb823c9cc610e57b86a265d7ffc30e9fe98548c609eba8bd3c0c2488
MD5 333583c17c45e6ecd7cdb6a2a498ffef
BLAKE2b-256 c4f371e69dbe0543586a3e3532cf36e8c9b38d6d93033161a9799c1e9090eb78

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f95bd07f301135771559101c060f558e2cf896c7df00bec050ca7f93bf11585a
MD5 b8d4e4bb529c16f11ac26a5179bbea1f
BLAKE2b-256 e59428a58258f8d822fb949c8ff87fc7e5f2a346922360ec084c193b3c95e51c

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 dab4178a0bc1ef13178832b12db7bc7f562e8f028b2b5be186e370090dc50652
MD5 711929b443b5bd961e8f0c72de4d5744
BLAKE2b-256 4dcb804f1bd5ff08687258e6a92b040aba9b770e626b8d3ba21fffdfa21db2db

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c5e0fdb5744caf1036dec5510f543164f2144cb64932251f6dfd42fa872b7f9c
MD5 84d5c8dd85ea2efe43d2ee8d75b8beea
BLAKE2b-256 e72646673bb18448c51222c6272c850484a0092f364fae8d0315be9aa1e4baa7

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 1e0f6648fd48f4c73d801c55ab976cd602e2da87de99c07bff005b131f269c6a
MD5 ba6fd100d62c16cd389ddee680b66e8b
BLAKE2b-256 63a806573154ac891c6b55b74a88e0fb7c10081c20916b82dd0abc8cef938e13

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 70c634e39c5cda0da05c93d6747fdc957599f7743543662b6dbabdd8d3ba8a96
MD5 0f841e0e8dbfa90c7535f804f09f4377
BLAKE2b-256 36269424e43e0e31ac3ce1ba0e7232ee91e113a04a579c53331bc0f16a4a5bf7

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ad5c53f2e8fcae9144009435ebe3d9832003508cf8935c04542a1b3b8deefa15
MD5 c6d81dec912d46cb74d04b18f024d60d
BLAKE2b-256 0a68dfa21aef5af4a144702befeb5ff20ea9f9fbe40a4dfd08d56148b5b48b0a

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ed3b8281c5d0944d939c82db4ec2300409dd69ee087f7a75a94f2e301e855fb4
MD5 5951cd677c5b2ffaff643429e42451cb
BLAKE2b-256 e1ff1977a595f15f8dc355f9cebd875dab67f3faeca1f36b905fe53305bbcaed

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 18eb45f711e942c27dbed4109830bd070d8d618e008d0db39705f3f57070a4c6
MD5 1a2e0612f346f715ea36af2d46acad6c
BLAKE2b-256 969c0bdd47733b832b5caa11e63df14dccdb311b41ab33c1221e249af4421f8f

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 0d7855f5e59fcf91d0c9f4a51dc5d8847813832a2230c3e8e35912ccf20baaa2
MD5 749ce3f71c346363600593396b00cabb
BLAKE2b-256 92c1c68163a6ce455996db71e249a65234b1c9f79a914ea2108c6c9af9e1812a

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-win_arm64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp310-cp310-win_arm64.whl
  • Upload date:
  • Size: 270.6 kB
  • Tags: CPython 3.10, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 34c905a721ddee0f84c99e3e3b59dd4a5564a6fe338222bc89dd4d4df166115c
MD5 b240e71f6dc4efd10c9b2083d2883dca
BLAKE2b-256 b6d8c7e9ff3c2648408f4cda7224e195ad7a0d68724225d8d9a55eca9055504f

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: regex-2026.3.32-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 278.6 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 5aa78c857c1731bdd9863923ffadc816d823edf475c7db6d230c28b53b7bdb5e
MD5 b3396baafea6cb6da7efd2d3393006d0
BLAKE2b-256 c48939d04329e858956d2db1d08a10f02be8f6837c964663513ac4393158bef9

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-win32.whl.

File metadata

  • Download URL: regex-2026.3.32-cp310-cp310-win32.whl
  • Upload date:
  • Size: 266.3 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2026.3.32-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 6128dd0793a87287ea1d8bf16b4250dd96316c464ee15953d5b98875a284d41e
MD5 ca40a400be13520bd51944d4f5a917a5
BLAKE2b-256 88dd5e6bd702d7efc3f2a29bf65dfa46f5159653b3c6f846ddf693e1a7f9a739

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6980ceb5c1049d4878632f08ba0bf7234c30e741b0dc9081da0f86eca13189d3
MD5 17f473cd1f125f8a1d97d0ace131d322
BLAKE2b-256 db3c653f43c3a3643fd221bfaf61ed4a4c8f0ccc25e31a8faa8f1558a892c22c

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 e006ea703d5c0f3d112b51ba18af73b58209b954acfe3d8da42eacc9a00e4be6
MD5 fa65d15805ce48c37eec98a29f03a460
BLAKE2b-256 bc6fabf2234b3f51da1e693f13bb85e7dbb3bbdd07c04e12e0e105b9bc6006a6

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-musllinux_1_2_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 fd03e38068faeef937cc6761a250a4aaa015564bd0d61481fefcf15586d31825
MD5 eeb3cc7f6aaecfa8e883efa609bd6618
BLAKE2b-256 c88e6544b27f70bfd14e9c50ff5527027acc9b8f9830d352a746f843da7b0627

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 f7cc00089b4c21847852c0ad76fb3680f9833b855a0d30bcec94211c435bff6b
MD5 3c9750599e2f7ffb8ece6d8167031d52
BLAKE2b-256 bfe7060779f504c92320f75b90caab4e57324816020986c27f57414b0a1ebcc9

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d6b39a2cc5625bbc4fda18919a891eab9aab934eecf83660a90ce20c53621a9a
MD5 16e073117632ef0e14e7870075da818e
BLAKE2b-256 3b86aff4ad741e914cc493e7500431cdf14e51bc808b14f1f205469d353a970b

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 2c8d402ea3dfe674288fe3962016affd33b5b27213d2b5db1823ffa4de524c57
MD5 65146718579289ae349af19e7f4ead88
BLAKE2b-256 2bfcea7364b5e9abd220cebf547f2f8a42044878e9d8b02b3a652f8b807c0cbc

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 69a847a6ffaa86e8af7b9e7037606e05a6f663deec516ad851e8e05d9908d16a
MD5 9ca6d18d003c380d46cfe18999028d25
BLAKE2b-256 380e91436a89c1636090903d753d90b076784b11b8c67b79b3bde9851a45c4d7

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 918db4e34a7ef3d0beee913fa54b34231cc3424676f1c19bdb85f01828d3cd37
MD5 c23e2cba1907716abd09010c1f09efc2
BLAKE2b-256 05e680335c06ddf7fd7a28b97402ebe1ea4fe80a3aa162fba0f7364175f625d1

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 6ada7bd5bb6511d12177a7b00416ce55caee49fbf8c268f26b909497b534cacb
MD5 c0d5ee89da23b36c6c085aae2dcddb2c
BLAKE2b-256 90d89f4a7d7edffe7117de23b94696c52065b68e70267d71576d74429d598d9b

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 d571f0b2eec3513734ea31a16ce0f7840c0b85a98e7edfa0e328ed144f9ef78f
MD5 35d3ccddecc9743fab919412fc5475ce
BLAKE2b-256 fbcb42bfeb4597206e3171e70c973ca1d39190b48f6cda7546c25f9cb283285f

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 887a9fa74418d74d645281ee0edcf60694053bd1bc2ebc49eb5e66bfffc6d107
MD5 0550895ac9ef8f1d96764d9a88b97841
BLAKE2b-256 6ea2cf7dfef7a4182e84acbe8919ce7ff50e3545007c2743219e92271b2fbc1c

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 879ae91f2928a13f01a55cfa168acedd2b02b11b4cd8b5bb9223e8cde777ca52
MD5 822ae6e8e4f5757188fd9809409be935
BLAKE2b-256 482fac2b481011b23f79994d4d80df03d9feccb64fbfc7bbe8dad2c3e8efc50c

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c3c6f6b027d10f84bfe65049028892b5740878edd9eae5fea0d1710b09b1d257
MD5 a644739ea412eaf4690538feda65ed74
BLAKE2b-256 f9fd7a56c6a86213e321a309161673667091991630287d7490c5e9ec3db29607

See more details on using hashes here.

File details

Details for the file regex-2026.3.32-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for regex-2026.3.32-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 462a041d2160090553572f6bb0be417ab9bb912a08de54cb692829c871ee88c1
MD5 82e11b220616e7f4b91051fc4b1205ef
BLAKE2b-256 6f87ae29a505fdfcec85978f35d30e6de7c0ae37eaf7c287f6e88abd04be27b3

See more details on using hashes here.

Supported by

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