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.5.9.tar.gz (416.1 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.5.9-cp314-cp314t-win_arm64.whl (275.7 kB view details)

Uploaded CPython 3.14tWindows ARM64

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

Uploaded CPython 3.14tWindows x86-64

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

Uploaded CPython 3.14tWindows x86

regex-2026.5.9-cp314-cp314t-musllinux_1_2_x86_64.whl (803.6 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

regex-2026.5.9-cp314-cp314t-musllinux_1_2_s390x.whl (856.6 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ s390x

regex-2026.5.9-cp314-cp314t-musllinux_1_2_riscv64.whl (773.0 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ riscv64

regex-2026.5.9-cp314-cp314t-musllinux_1_2_ppc64le.whl (866.5 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ppc64le

regex-2026.5.9-cp314-cp314t-musllinux_1_2_aarch64.whl (801.4 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

regex-2026.5.9-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (785.9 kB view details)

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

regex-2026.5.9-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (816.4 kB view details)

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

regex-2026.5.9-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (917.5 kB view details)

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

regex-2026.5.9-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (871.2 kB view details)

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

regex-2026.5.9-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (811.9 kB view details)

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

regex-2026.5.9-cp314-cp314t-macosx_11_0_arm64.whl (292.4 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

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

Uploaded CPython 3.14tmacOS 10.13+ x86-64

regex-2026.5.9-cp314-cp314t-macosx_10_13_universal2.whl (494.3 kB view details)

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

regex-2026.5.9-cp314-cp314-win_arm64.whl (273.5 kB view details)

Uploaded CPython 3.14Windows ARM64

regex-2026.5.9-cp314-cp314-win_amd64.whl (281.0 kB view details)

Uploaded CPython 3.14Windows x86-64

regex-2026.5.9-cp314-cp314-win32.whl (272.1 kB view details)

Uploaded CPython 3.14Windows x86

regex-2026.5.9-cp314-cp314-musllinux_1_2_x86_64.whl (789.4 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

regex-2026.5.9-cp314-cp314-musllinux_1_2_s390x.whl (851.4 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ s390x

regex-2026.5.9-cp314-cp314-musllinux_1_2_riscv64.whl (765.9 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ riscv64

regex-2026.5.9-cp314-cp314-musllinux_1_2_ppc64le.whl (860.9 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ppc64le

regex-2026.5.9-cp314-cp314-musllinux_1_2_aarch64.whl (785.8 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

regex-2026.5.9-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (777.2 kB view details)

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

regex-2026.5.9-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (800.6 kB view details)

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

regex-2026.5.9-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (911.5 kB view details)

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

regex-2026.5.9-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (866.1 kB view details)

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

regex-2026.5.9-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (797.0 kB view details)

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

regex-2026.5.9-cp314-cp314-macosx_11_0_arm64.whl (289.7 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

regex-2026.5.9-cp314-cp314-macosx_10_13_x86_64.whl (292.0 kB view details)

Uploaded CPython 3.14macOS 10.13+ x86-64

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

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

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

Uploaded CPython 3.13tWindows ARM64

regex-2026.5.9-cp313-cp313t-win_amd64.whl (281.2 kB view details)

Uploaded CPython 3.13tWindows x86-64

regex-2026.5.9-cp313-cp313t-win32.whl (270.0 kB view details)

Uploaded CPython 3.13tWindows x86

regex-2026.5.9-cp313-cp313t-musllinux_1_2_x86_64.whl (803.5 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

regex-2026.5.9-cp313-cp313t-musllinux_1_2_s390x.whl (856.6 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ s390x

regex-2026.5.9-cp313-cp313t-musllinux_1_2_riscv64.whl (772.8 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ riscv64

regex-2026.5.9-cp313-cp313t-musllinux_1_2_ppc64le.whl (866.5 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ppc64le

regex-2026.5.9-cp313-cp313t-musllinux_1_2_aarch64.whl (801.3 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

regex-2026.5.9-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (785.5 kB view details)

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

regex-2026.5.9-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (816.3 kB view details)

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

regex-2026.5.9-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (917.3 kB view details)

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

regex-2026.5.9-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (871.1 kB view details)

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

regex-2026.5.9-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (811.7 kB view details)

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

regex-2026.5.9-cp313-cp313t-macosx_11_0_arm64.whl (292.3 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

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

Uploaded CPython 3.13tmacOS 10.13+ x86-64

regex-2026.5.9-cp313-cp313t-macosx_10_13_universal2.whl (494.2 kB view details)

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

regex-2026.5.9-cp313-cp313-win_arm64.whl (270.5 kB view details)

Uploaded CPython 3.13Windows ARM64

regex-2026.5.9-cp313-cp313-win_amd64.whl (277.7 kB view details)

Uploaded CPython 3.13Windows x86-64

regex-2026.5.9-cp313-cp313-win32.whl (266.7 kB view details)

Uploaded CPython 3.13Windows x86

regex-2026.5.9-cp313-cp313-musllinux_1_2_x86_64.whl (789.6 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

regex-2026.5.9-cp313-cp313-musllinux_1_2_s390x.whl (852.1 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ s390x

regex-2026.5.9-cp313-cp313-musllinux_1_2_riscv64.whl (765.7 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ riscv64

regex-2026.5.9-cp313-cp313-musllinux_1_2_ppc64le.whl (860.2 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ppc64le

regex-2026.5.9-cp313-cp313-musllinux_1_2_aarch64.whl (785.2 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

regex-2026.5.9-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (777.1 kB view details)

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

regex-2026.5.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (801.3 kB view details)

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

regex-2026.5.9-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (912.3 kB view details)

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

regex-2026.5.9-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (865.4 kB view details)

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

regex-2026.5.9-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (796.7 kB view details)

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

regex-2026.5.9-cp313-cp313-macosx_11_0_arm64.whl (289.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.13+ x86-64

regex-2026.5.9-cp313-cp313-macosx_10_13_universal2.whl (490.3 kB view details)

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

regex-2026.5.9-cp312-cp312-win_arm64.whl (270.5 kB view details)

Uploaded CPython 3.12Windows ARM64

regex-2026.5.9-cp312-cp312-win_amd64.whl (277.8 kB view details)

Uploaded CPython 3.12Windows x86-64

regex-2026.5.9-cp312-cp312-win32.whl (266.7 kB view details)

Uploaded CPython 3.12Windows x86

regex-2026.5.9-cp312-cp312-musllinux_1_2_x86_64.whl (789.5 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

regex-2026.5.9-cp312-cp312-musllinux_1_2_s390x.whl (852.1 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ s390x

regex-2026.5.9-cp312-cp312-musllinux_1_2_riscv64.whl (765.8 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ riscv64

regex-2026.5.9-cp312-cp312-musllinux_1_2_ppc64le.whl (860.1 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ppc64le

regex-2026.5.9-cp312-cp312-musllinux_1_2_aarch64.whl (785.1 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

regex-2026.5.9-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (777.1 kB view details)

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

regex-2026.5.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (801.2 kB view details)

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

regex-2026.5.9-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (912.3 kB view details)

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

regex-2026.5.9-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (865.4 kB view details)

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

regex-2026.5.9-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (796.7 kB view details)

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

regex-2026.5.9-cp312-cp312-macosx_11_0_arm64.whl (289.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.12macOS 10.13+ x86-64

regex-2026.5.9-cp312-cp312-macosx_10_13_universal2.whl (490.5 kB view details)

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

regex-2026.5.9-cp311-cp311-win_arm64.whl (270.4 kB view details)

Uploaded CPython 3.11Windows ARM64

regex-2026.5.9-cp311-cp311-win_amd64.whl (278.4 kB view details)

Uploaded CPython 3.11Windows x86-64

regex-2026.5.9-cp311-cp311-win32.whl (266.2 kB view details)

Uploaded CPython 3.11Windows x86

regex-2026.5.9-cp311-cp311-musllinux_1_2_x86_64.whl (789.2 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

regex-2026.5.9-cp311-cp311-musllinux_1_2_s390x.whl (844.6 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ s390x

regex-2026.5.9-cp311-cp311-musllinux_1_2_riscv64.whl (763.3 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ riscv64

regex-2026.5.9-cp311-cp311-musllinux_1_2_ppc64le.whl (854.5 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ppc64le

regex-2026.5.9-cp311-cp311-musllinux_1_2_aarch64.whl (781.6 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

regex-2026.5.9-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (773.6 kB view details)

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

regex-2026.5.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (799.8 kB view details)

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

regex-2026.5.9-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.5.9-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (861.7 kB view details)

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

regex-2026.5.9-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (792.3 kB view details)

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

regex-2026.5.9-cp311-cp311-macosx_11_0_arm64.whl (289.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.11macOS 10.9+ x86-64

regex-2026.5.9-cp311-cp311-macosx_10_9_universal2.whl (489.4 kB view details)

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

regex-2026.5.9-cp310-cp310-win_arm64.whl (270.4 kB view details)

Uploaded CPython 3.10Windows ARM64

regex-2026.5.9-cp310-cp310-win_amd64.whl (278.4 kB view details)

Uploaded CPython 3.10Windows x86-64

regex-2026.5.9-cp310-cp310-win32.whl (266.2 kB view details)

Uploaded CPython 3.10Windows x86

regex-2026.5.9-cp310-cp310-musllinux_1_2_x86_64.whl (782.1 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

regex-2026.5.9-cp310-cp310-musllinux_1_2_s390x.whl (837.1 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ s390x

regex-2026.5.9-cp310-cp310-musllinux_1_2_riscv64.whl (757.7 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ riscv64

regex-2026.5.9-cp310-cp310-musllinux_1_2_ppc64le.whl (848.8 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ppc64le

regex-2026.5.9-cp310-cp310-musllinux_1_2_aarch64.whl (775.0 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

regex-2026.5.9-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (769.9 kB view details)

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

regex-2026.5.9-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (786.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

regex-2026.5.9-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (794.1 kB view details)

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

regex-2026.5.9-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (899.5 kB view details)

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

regex-2026.5.9-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (852.1 kB view details)

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

regex-2026.5.9-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (784.8 kB view details)

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

regex-2026.5.9-cp310-cp310-macosx_11_0_arm64.whl (289.2 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.10macOS 10.9+ x86-64

regex-2026.5.9-cp310-cp310-macosx_10_9_universal2.whl (489.4 kB view details)

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

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9.tar.gz
Algorithm Hash digest
SHA256 a8234aa23ec39894bfe4a3f1b85616a7032481964a13ac6fc9f10de4f6fca270
MD5 b58280596927b0daf8764c1e52b2eb59
BLAKE2b-256 dc0e49aee608ad09480e7fd276898c99ec6192985fa331abe4eb3a986094490b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.5.9-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.12

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 5e41809d2683fcde7d5a8c87a6567ba1fb1ce0de9f31bff578de00a4b2d76daa
MD5 98ebfabfa6925f68656894e7abb551fc
BLAKE2b-256 da8035b4c33c804a165a7f55289afda3ea9e3eb6d15800341a2d66455c0f1f30

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.5.9-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.12

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 ca518ed29c46eecba6010b15f1b9a479314d2de409536e71b6a13aa04e3b8a77
MD5 7d9cba5c8402ce369fcbfd0c8c005870
BLAKE2b-256 927393d42045302636c91f2e5ef588b65b84b01428f28ec77de256b1dfdfbe5c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.5.9-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.12

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 3ddd90103f9e5c471c49c7852ecc1fe27c7e45eb99e977aefe7caa4e779f4f58
MD5 3bacfbbef73632650fce24b1ad5c62db
BLAKE2b-256 d5fe1b3113817447a1d4155e4ac76d2e072f42c0bcba2f43fa8a0e756ea2cd91

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 be3372b9df6ddecff6486d37e19095a7b4973137caf5512407a89f4455361f41
MD5 0512709a57153d1c77ad42cf69140b28
BLAKE2b-256 fed4a9b732f2f0072c0ab12227483abb24fffcb9f73f8a2b203df0a6d0434735

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 0e1b1b4e496afbb24f4a62aba855ee4f88f25578927697b340702e48c9ee6bc2
MD5 0d24b4466f121d1dbc8face67da9a5d6
BLAKE2b-256 50a8a9979c3e7918280e93159ebcab5ef1a65116dd4f3bd6091be0eae4a126e8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 5604dfd046dc37eca90250fc3be938b076c8059fa772ac0ed6f499b0f0fb0415
MD5 c135c3b7992a7f9ec7a0c2057d400c2c
BLAKE2b-256 d111960724e06482c08466ff5611e242e86f80062949cdf6b4b9cc317b9dd93d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 31037c82eccb44b7ea2e9e221d7c01429430e989a1f4b91ea5a855f6017b509a
MD5 f18ccfc1ae4f69cf21543c0596177d69
BLAKE2b-256 e3c41a80654597b6bc1e1ea0494824c31200e8a956abe290afae9b19a166a148

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8abd33fef90b2a9efac5557d6033ca82d1195ed3a15fea5af15ba7b463c6a63b
MD5 1a98160df4dab089c0b8a8c518c00d4d
BLAKE2b-256 0267a31f1760f09c27b251ef39e9beb541f462cf977381d067faa764c2c0e393

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 002205cafd2a9e78c6290c7d1df277bf3277b3b7a30e0b4bb0dac2e2e3f7cb2d
MD5 548f4f4a663bd67940a55de0fef68d0b
BLAKE2b-256 41906f0cc422071688266d344fca8462d787cba0a2c144acb25721f9a61ec265

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6351571c8a42b505eb555c0dc47d740d0fb66977dc142919eea6f4325b7c56a0
MD5 441d05c22ac92776caeb1bdbf1967044
BLAKE2b-256 88e7179cfda3a28bc843b5c6cfe7f79f23489c791ed95f151083803660878432

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 8c6e4218fbdfbcd4f6c19efca40930d24a621bf4b48cb76bc6640543bd28ef20
MD5 b449e7ed77cde6bbfc5f4f56aefe8650
BLAKE2b-256 1c75058fc4470cbfbf57d800aff1a0022b929a3f9fa553ee10a0cdf2070eb31f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 ead4b163ac30a29574510cd4b3e2e985ac5290c05fc7095557d6a5f403fc31b5
MD5 2c2e0d298b721036cc84400177b64ce0
BLAKE2b-256 80fedaf53a47457a8486db66c66c01ceb9c2303eecee3f87197f1e77eb1a736d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 45375819235558a4ff1c4971dc32881f022613abdb180128f5cb4768c1765a1c
MD5 94900b259d278469da823eb6e2778b85
BLAKE2b-256 7934d2b0937faa7859263f7f0a3c6b103a1296306be6952dc173d0154e9a2f49

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 075160bf16658e16d35233300b8453aac25de4cbea808d22348b6979668e924d
MD5 decfc3b9df541b7f93f4511a2205e0ad
BLAKE2b-256 7afee8988b2ae2108c6ef71bd4aa8d87fbe257976dd0810e826cd75f701c68b6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d3d7eb5c9a7f6df82ed3cfac9beb93882a5cbcb5b8b157b56cb2b3b276574ac1
MD5 db67ea6c7147e6d9df950bc299556111
BLAKE2b-256 052c5d01f1aee33de4bbe60c8452945bfc8477ca7c5ae4450f6bfe711036cb36

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314t-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 83d0ee4a57d1c87cb549e195ec300b8f0ec3a82eba66d835e4e2ed8634fe4499
MD5 4a821463a3a17b15899e326f8fb9657a
BLAKE2b-256 86c1c5f619b0057a7965cb78ec559c1d7a45ce8c99a35bea95483d64959a93d9

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 e1d93bf647916292e8edcec150c07ddf3dc50179ccaf770c04a7f9e452155372
MD5 9b90019af1ee235af4c949215574fd12
BLAKE2b-256 705a1dd1abee76cb7a846a0bcf42fdc87e5720c3c33c24f3e37814310a513d9f

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 ff8d372ac2acdc048d1c19916f27ee61bc5722728458ba6ca5052f2c72d51763
MD5 01891035511f4cad463f6db23a7f468d
BLAKE2b-256 d09c02eebf0be95efe416c664db7fb8b6b05b7a0b06a7544f2884f2558b0526f

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 98bd73080e8756255137e1bd3f3f00295bbc5aa383c0e0f973920e9134d7c4ad
MD5 e26264db873fae0dedf6694ae1eb404b
BLAKE2b-256 73563dcafe34fc72e271d62ad9a291801e88a1457bb251c132f15fcc2e5aad1a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1e6da47d679b7010ef27556b6e0f99771b744936db1792a10ceac6547ae1503e
MD5 d924eeed839dab440622df212de7089a
BLAKE2b-256 26291a13582a8460038edc38e49f64ceb0dd7c60f5caba77571f4bf6601965d9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 fa411799ca8da32a8d38d020a88faa5b6f91657d284761352940ecf9f7c3bbdd
MD5 9f82e39811ace6a69bc16f7710c0f8dd
BLAKE2b-256 2670704d8e13765939146b1cd0ef4e2feb71d7929727d2290f026eed10095955

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 916714069da19329ef7de197dcbc77bb3104145c7c2c864dbfbe318f46b88b14
MD5 2c2082cd3b24f287a3f5a90439a5e763
BLAKE2b-256 f9f7f4f86e3c74419c37370e91f150ae0c2ef7d34b2e0e4cdd5da046a02e4022

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 a24852d3c29ad9e47593593d8a247c44ccc3d0548ef12c822d6ed0810affe676
MD5 071774d44f20a07daee33a9733e11479
BLAKE2b-256 2ac4f25473209438638e947c55f9156fd8f236f74169229028cc99116380868e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 24b2355ef5cc9aa5b8f07d17704face1c166fdcc2290fa7bd6e6c925655a8346
MD5 16df754239196421ff8c607f9bb6fd7b
BLAKE2b-256 946ae85ed9538cd19586d0465076a4578a12e093ce776d15f3f8ce92733a8dd6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 d641a8c9a61618047796d572a39a79b26167b0411d2c3031937b2fe2d081e2cf
MD5 3c6eabb235f679f63c6ee7b6a460acb1
BLAKE2b-256 a4dd23a249047013b5321d4a60c4d2437462086f601b061776a525e5fba2a59f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0de5cf193997384ed2ca6f1cd4f78055b255d93d82d5a8cd6ba0d11c10b167e4
MD5 36dd4b2c8f800e96fe7893718624cce7
BLAKE2b-256 d9272af43dd1dc201d1fecefda64a45f4ad0995855b92724f795a777b402ee69

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 5b73ab8afcf66c622db143d1c6fda4e58e4d537ee4f125229ad47b1ab80f34c0
MD5 8efbc15052c27505bb38f64c72e9d905
BLAKE2b-256 e0084d32af657e049b19cb62b02e46e38fe1518797bfb2203ee93a510b21b0dc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 65c8c8c37377794bd5b2f3ebe51919042bf17aec802e23c833d89782ed0c78af
MD5 6acdc86bccd509ea51fbe5eacca828ec
BLAKE2b-256 2ca69f992d00019166b9de01c546dd4549bc679f2a68df11b877740b0760b7c2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ecd353045824e4477562a2ac718c25799cdaaa41f7aa925a806a8a3e6848a5b9
MD5 87450d8ca1b76478235d0d3c72f476a2
BLAKE2b-256 3ed2b835e3cafbb9d977736912436259ff551d60919f7d7b3d37d46659c63564

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2099f7e7ff7b6aa3192312650a56e91cc091e49d50b04e4f6f8b6e28b3b27f1c
MD5 eb814d89c25a0d74cd705c6ccba999c0
BLAKE2b-256 21919d50b433828d8e74196904e168a43abf1e6e88b2a15d47ed742456720c37

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 dea2e88e1cce4522496cce630e11e67b98b7076620bc4336c3f674bc21a375f4
MD5 69d0450c79080dea7bc846db0eb40aa9
BLAKE2b-256 6070d43ee8a2ca0a8b68d167f21658b85520ac0574617c7f320367c5047f7556

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp314-cp314-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 1bd7587a2948b4085195d5a3374eaf4a425dc3e55784c038175355ecf3bbbf8a
MD5 76dfc39c351dd0b9c6a772867bacf188
BLAKE2b-256 133e9c3cd292d8808b3645a2ce517e200179b6d0e903f176300bd8b542e14de5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.5.9-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.12

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-win_arm64.whl
Algorithm Hash digest
SHA256 872acc074bd29ffc9913ecdfedf6ea77502312ca44a4aa0d3779089c6069d8de
MD5 ebef785e5aa5237cb20f634880015510
BLAKE2b-256 72b13379415e8f135c13ac551353397cc4fe97b4978f3cac73c5fcbcded548b8

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 b46b0f094dc1d3b90356c85a0bd2c9bafc4a6a190b9d6f8ddd5a033b6e088ed4
MD5 3bd22429d7a0920dbc27e7e908f70c8a
BLAKE2b-256 0e9d8870b8981d27b22cda77bb26a5ac7ebfa9c7d9e0dea195a834a82380e748

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-win32.whl
Algorithm Hash digest
SHA256 ed2c9e8068b614c574d8d30e543d617cf5379b0535d46f97ef00e904745a08b5
MD5 4979900e4930c04d27189e4d88ccc2f1
BLAKE2b-256 0499eff29f1037dcab36702c9ee5d6858cf1ce2336ea8ea2987f64245b99ea5e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 dfbe4579b9f08036aa7d101d1835437a20783574ac66327e6b29b4018a138081
MD5 dcb7e507ec68fa439f858acee0f2a7ae
BLAKE2b-256 a92992ff47f75990131ea4f24ba17819e5a9d141e10819807e09addd73409af6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 205109e96b3cf5adf8f4cd62bedde9487feb282b9497a3535451e5a24cd706a0
MD5 fdfd26ad520924a6a503c28b3444ab34
BLAKE2b-256 d8ae7d2089bcd78ad0c0161bc684339df50032acb438a7bd3305e7ddb1193cec

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 ddda5340e6c01a293027dd46232fa79eaff1b48058ce7a98f572b6445b088041
MD5 82794c46f368e47e851ec6615a5e31e3
BLAKE2b-256 8d3d30f2ae62cef3278bb5bb821f467277a55fb73f01032cf85997e15e8289a8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 8e76e8161ad00694cfce6767d5dea860c6391ac5b83e5c3a39661e696f11fc7e
MD5 76b241c69bf50970c14eb6034cfd9788
BLAKE2b-256 7d628ca59a24c55bc34d166eefaf3717bd77772f329fdbf984d86581e0a3571c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 fd190e88a895a8901325fad284a3f74ea52b1da8525b76cc811fa9b1edf0ce2b
MD5 fc38f3dbb9d17e1cd2c914f0bf470dea
BLAKE2b-256 7fabcb0999802dcb0fb95b1ab005e8d4163d8afdd67efc2cb6b6630ac13f8cb1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 7e30b874d341fac767d7df5a0870540541c2c054b80cfaac116e8d367a8a7ff2
MD5 896f7198b007b0aa3323df4c8f6256e6
BLAKE2b-256 4c47742ef579c61730f8d268e5cf1f9ce0e37e2ea041ad0f5644724f2378e463

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 728d8bfd28a8845c8b6bc5dc7ce010453d206396786c0765c2740cb65f37791e
MD5 77b293cbcba95695156a6741eaf78bd8
BLAKE2b-256 aeff8db60211e2286e396aad7dc7725356c502bff0901ea05bd6cdc2e1a042b9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 c8b9b9d294cfea3cd19c718ade7cc93492b2c4991abd9a68d0b3477ae6d8e100
MD5 ef28e9714beefcae5622f025338d7ff1
BLAKE2b-256 18d480882e799e440dd878b0979cbebf8fa4d54624a332c83037c7a701649e3f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 7e87577720152d2caae19fe2baaf1f8d5ca12091e9e229f03915c37d1e4b9178
MD5 a787d4a85bd5a73926410c24a7d330d9
BLAKE2b-256 8783a5c1c525fba0aa656e88ad0face0b1829788ef4c2fb6b26df58aa1151b84

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8f3af7a4903c5c04a11a196a5aa75cdd7dd3f8508132f9fb3259d9f5908e3b88
MD5 08f2881dc22d2e86ce0a0c3084fe92e1
BLAKE2b-256 e26ce41bfeecb589716843e7c4df09ba46ff2a42961457afece19059d85caeef

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b96350aa424e79d4fd6b567b344dcbe2b2d6bfc48dfe7717587e1fa6d43da6ff
MD5 eab45f6b0df8395fb1753b1e52300a81
BLAKE2b-256 f27d9fbf919768368d3f8a4f6c692cf2aa61e482b2b81ec6a298ace4cbf02480

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 48036f6374aaa79eb3b754ec29c61d1c6b1606749d705a13f8854fa2539671f6
MD5 df16b8598e23838b2ceee211d5934d71
BLAKE2b-256 c443fd1177a2032037c681baecdb3422ee4e1424aec4e4f470ef47793d325274

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313t-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 01f28d868834624c934b8d2e0aa1c8341337e37831f4a012f18a5afcba4cbaf3
MD5 ea22a08b79c7f51af3c031e39a80c3de
BLAKE2b-256 e8e9d21346f7b60ed58789371358ed66b09d00f832e1bd7c06e55d9da5679882

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 56a33f191f17d8c417f99945ebdc1e691d3af9605d86ec68c7e54a57e3e17af6
MD5 f015cc05f955ce98afbde216cc11161b
BLAKE2b-256 d9c60a2436ae4da1ba76e51cb98943c6838a9a721faa40ebe2dce07694ae34e3

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 3527bb4942d2c14552155406cdedd906567456821848aed1cb4933a391bf5eca
MD5 37f5b053d8a6443245e3911e87ec5fa8
BLAKE2b-256 e61d861a93719fb9ee7dbfc3761b3797b7a3e112a5d42c6129459d2d741be9b5

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 f3844f134e834076677dd369976e9f5068679fcb8e50102fdf6b7ac96a3ec127
MD5 fc75c32b2aa48af45f8c29f0b11b30f5
BLAKE2b-256 05a4018e71f7d2ad48c1ebe6d3ae0026f9b7cb4802fd15c7cc02fdf724355102

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2efa205e6d98b24d1f3ab395c11aa15cdf10935bca283d0285e0499c284fba21
MD5 1ee9af80eaac49aca9c4f86c2d24bb3c
BLAKE2b-256 5b927eebc0d0a01e78629695f342ba17e0deaff8fb45e79cc0d7b98287da6e3e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 d659eee77986549c9ea45b861c7567e44d6287c3dc9a4565478853f7b9fe2ff6
MD5 9419b404f104947406aa67cd15f49668
BLAKE2b-256 12f4499e74a20c156fc75836ee04a72a38d1a063978f600937f9760467beb1b0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 debb893095e944091c16e641a6e33c1b0f4cb61ab945ec5afbf53ce7068834d8
MD5 4ee7e3d0b79df303564c87147817f9bd
BLAKE2b-256 6ee14a57a83350319b1271f0d7a249b8672513ed928b237a741631270de6caea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 d29eebfc9525db68cad3c97eedd7f754fa265aa5cd0cf4f863b2421e1b48fc9f
MD5 e400c5797abdc155b9cd31ee5766f2f1
BLAKE2b-256 bfe05214774090e7b4524dcea3e3c4aa74141d43043f8beb49c1599db1c8b53a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2acfb48634f64996b57f90f39afa692ff362162722581921fe92239a59960f3c
MD5 105bcd5766f329d61268f87e0e3d3372
BLAKE2b-256 235cd78d4924e7fc875557b9e9b768423925fdfaac5549d06da7810019a9bd26

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 e82db382b44d0111b22601c509c89f64434816c9e0eef9d1989cda8cc6ff1c04
MD5 fa506c4241bd59a18ac47652a05fae04
BLAKE2b-256 50fe0cf96b882f540e62e8b9956599798203d599c44cf4c77917ca27400ff69b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b6d189041f15691cfa2b6c4290448ec221244d225b3f5fe9e7771b34ffcdf6e2
MD5 bdef1dcd60909a86ff08e5a4a3c28493
BLAKE2b-256 30e1c93444052cf41581f3c884ab3fb5823daf0992f11cd4388d4275ca610558

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 508f56a89ba9cb26e4168cbc37dbd60a28d82430a9e18ad1d25fe0883c314ca2
MD5 0869dbd95112337cbdb7219e2bdee0bb
BLAKE2b-256 1a89f05169e8588aac365f35ffc7f3bc3184f095ef4cfded7cfaa3c7fd5dbd89

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 57e8915c7986aa33d25e4d3629cef711cd2863f2961b10409f0c04cb8b7d9020
MD5 1db067e889ab1a5b4cb0985bc9091277
BLAKE2b-256 d43066ab84588765f5b4b271a9ca09ef7ce2b87caa95176ec3d2ad65d7bc4902

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 aa0fbdbac82cb3e4450d0ccde7d7a35607f4cb2dd9fba4b8b69bfaf8c9fa6aed
MD5 5403971acd215a527c46a307b9754831
BLAKE2b-256 d39bb3fdd62b003baa1a9b593cd8c8699c9651c2e80cc21a5c715707983c42d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a8820737949116ffff55fe18f9fc644530063ba6ebfcb8314239416e78f1347c
MD5 326c2a40454b39d96f3abbc75b8f423c
BLAKE2b-256 2de7d0eaf5713828417b9e5648cf81fa9bacd4961f6ab98c380c2034f8716e35

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d7bdc0ab8f3dd7e1b4f9ab88634e13374669db86bb3c72e8292f07ae313f539f
MD5 bc95f33ea65396552e3ae7845c838b47
BLAKE2b-256 44dabf30abaaa737b58f4a4b8c4a03659e02fd92092c822e0197ed9e0daab917

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 d626b84406444b165fc0ba981604edea39f0588ff1f92baa23fe50799ea9afdb
MD5 50bfb2b4cbe0d059370481338dfb4233
BLAKE2b-256 aada797e91ecec6f84135da778ddce78c20e0af5d2a15c26f87a81bc3eadb6db

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 96f5f58b54a063d7ea9dca08e1cf57bfe10499c4d579ee672da284f57f5f0070
MD5 fbc78a478b94e78fe0d915c37a8b545a
BLAKE2b-256 4fb57b30f312b0669dff5beebe5b0989dc2d1a312b1a44fab852199c387a5b96

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 86f40a5d6444db30a125c9c9177e6b25dad981cbc37451fd838f145e6edac92e
MD5 da275946dbafac1de942aa90c9a0e27a
BLAKE2b-256 7887240d36864f9e48ace85f72e79ced97ceb7f27ce87739a947dcb834b4e6bc

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 164eba9b755ea6f244b0d881196fbc1fac09714e9782c9e2732b813142033c8e
MD5 72ee074e221db6f694d8058c1eaa3326
BLAKE2b-256 c31cbdcc98f9a4af4fdd166c74941174619ccff4726d3ce32faa8e9a2ecd38dd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fd03c4f0e33280d15cae17159b899245d6b7c53d21def19b263b39655061f5ce
MD5 3ac076f8ba1abc600cc139a8d17cc770
BLAKE2b-256 21de8dfde60fc1b21c946a893ba273403b72617edb261370cb1087099a83f088

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 39617fb0cde9c0e6306dc70e3bfc096f3da793219879f7ae7aa341a69fbdcf6d
MD5 11db4fbae3666bdcb4eb39e424ae77b3
BLAKE2b-256 dc660ae8c092e60b14c79d24f8e0b7f0aea5bfbffdcab00b5483d13404d3c3a5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 cd2846168eb9ee3c513902bc8225409cb1caab31d04728b145171fa1625d9621
MD5 e514171de5da59ea2ff6c96747b5f88a
BLAKE2b-256 18a3bd855e0f2cb1a978ecf6fa6bb69632dd9c3f6ea3b81cde62fde14c9daec7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 ea9c8ecfa1b73c73b626534d6626e5340d429630943672b8480724f44e84b962
MD5 d6b03720a1a1f30223c8836864cb1d6c
BLAKE2b-256 4a986fc1e6410feefb92159edaed5041992bfe390e8d26c721865434acbca558

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4eeb011098fcb77af513dcef521a3dbecbf8849b1e38940759d293b7a93f5026
MD5 8f47b648714653d53b22af6a937788b7
BLAKE2b-256 192beee0d20a6842ba04df4b8847a920b57ef56853f14ef85405473e586b605a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 daff2bdbaf1d23e52fdff7c0b7bc2048b68f978df6a4d107ac981f94caef2e66
MD5 7f9ad5c37cee8ba1c4f8ba4f8542a455
BLAKE2b-256 172f6f6008682bf2cf98040a0d3153a8e557b6ab728d7713d045cee4ce544ab8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dd2810d22146b6d838acc5ec15602cb6b47920aa4e33015df3868eedfd20bab8
MD5 9b71a15c3897049e8c724bbf79eae542
BLAKE2b-256 cc1e3fbe2fa1e8cebd62f3bb7d3321cff1640aca2e240b51d9bd624aad949260

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 93a7860539414dddaefba2b40f8771765ae17949d4c7182b876ce429e11a8309
MD5 02d69235c15aa81f8f35c581f62874ef
BLAKE2b-256 0a518cd301ecc899aea28124357f729f4272f44de7806fc7ca02490bfbe253e8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 91328f1c23d47595ca3ef0a7557fa129c5a23404b775c770697d2f35b33e0107
MD5 b67c25baeea378a2a54b4c3eb2f9800f
BLAKE2b-256 cfe7f035b4fd858b050b0080bf302968dc0f59ba34e391872d54936758e6844e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6441cc660d76107934a09c22167200839a0e89604a6297f78a974e66e931d2c0
MD5 96f1db6c4c91e7991595950da95f44a2
BLAKE2b-256 d8ddba103dc19614e25f3880800ca67ce093d6e21b325d72b8383c7bf906e9fa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f7a7c26137296beba7784de6eba69c6a93a63ccebc385e4962fe67e267a91225
MD5 467fa85ff695062113561e4e751804cf
BLAKE2b-256 544bee27938d1b2c443e89a9a10e00d2d19aa5ee300cd3d61140644e93bb083e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 398c521292f4c7fb807001dcd54694d3a1fcafc179a36ad9cc56f98df85930b6
MD5 45ad97058d8468f3fc9af74a017864dc
BLAKE2b-256 1e95fc7ba4303b5a0f92446a12ee6778ef2c6c799233f5060042a31bf390cfe9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 57eeeb05db7979413dec5438f2db21d7ecbba787cde7a711df1a6f6df672aa06
MD5 441a299b0a77b52948e42f0103cecfa1
BLAKE2b-256 509b6550044bc44e17c84d312c031c2ec42fbdb6a4ec4e29093be3a172d08772

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 d726ca3f0d76969bf1e8e477d160d3d666bbf999f6860bd314889e5345782046
MD5 dd4c66c0feb6e6b48e06da3fc4136e12
BLAKE2b-256 db8df9aeff6ad63a3ef720386f2907e6d34a35a510a6e498ebad28b0fb3f6ab6

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 246de9d60aa3f8538b519834dd95cbf276ea263d6a7bd5a3666dc3fa0230505b
MD5 343abb7b6a7822bde564a68eb59171b3
BLAKE2b-256 d0b08dce459f6245bcf8f6e9f23ac9569f1a0f15c131cc0745e82b43226204cf

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 8676474c07469d6f33dd1085ca2cd45f65785f32518f2b20e36d9953ca07f994
MD5 df6bd8defcd1bb1cd0f82b32a50f4794
BLAKE2b-256 cefc294fe4fac4f2ed67207b17471815870c1c45b3a489e08e0ac96daea16ef6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1268eddd8486dc561d08eee1156e40aa3a8fe10f4bdec8fa653b455fcbffd12c
MD5 028922537daa7fa08ba3fa45e4ddbe08
BLAKE2b-256 a5270daffb1a535bb39f422c3d200f4ab023c71110ad66a32b366bee708baba0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 01f0f5f55f4b64dacec85dc116d3c05fd23ad3ff037bbc73a2085775953c2611
MD5 68931caa268945136fc88c0217169d8e
BLAKE2b-256 93c7e7737f1526b3fb32bd4c337fd6c71c3ebb5c8296fc34d11197e0955d2e35

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 0f9eede6a5cbdc02d4978090186390936e1776a7d1359b21e41014c609880bcf
MD5 3845f214479eff34543793416ec727e7
BLAKE2b-256 4ec16e3d8202d981f3117004bf341ee74893ba4ba8a9fbaf4b94615846550a08

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 97cf3bc1b7d7d2306772ec07366c80d9df00ff79e79cea32898883a646d2fae2
MD5 15ac884c4c809f1e106f5e692451ef19
BLAKE2b-256 1d9605c7434d88185e5d27fe54aeb74df86bd77cd79f52f0b4eae54faa8fea70

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4ebe8f0b5ec5a5024dc4a4c59f444c4e9afc5f2abdbb8962065b75d27fb971f9
MD5 066df94660ff6012ace66c6aaeff6759
BLAKE2b-256 688f70c04a236d651c81881dac42ef8538bddda6121434509d0a22d9e601503b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 f079e50a0d3cc3cd5091fa9ff45869a2e6b2cd35895731edafb0327901a8d86d
MD5 0f95c54bd936a8938cf26493f07fd1c1
BLAKE2b-256 7359955734c803f59108deccba3597ae440c76b62a652733c0006e6243758420

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2a661a7d270a61f7cf460caee8b9fa2d5ef9e5c681234bcb9e0fe14f488e7dfc
MD5 416e08105e7415291031e663a1a996df
BLAKE2b-256 336f1481597e859ef19508b345eec4afd1416ed6e6b459c75a64026ef193aecf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 3dd4a3ff360dfb836fecdb93a4598f9d6e2ac81e3e397125145c6221bf58cf4c
MD5 49e9d2171851308ded10ef5c29bdd0c9
BLAKE2b-256 b5d0b3618a895dd8feb897c61bb2954edd265e1767d82a01d53065d5871127a3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 c9411dd64ca95477225734a93dfc8583b51916b8d5942f99d6cac21e09965451
MD5 77b768d6e03cf03614a1727f092f9868
BLAKE2b-256 0778fe4800cd322f862ecffd2d553409b20d80650e5ed71b9d178f853d020b82

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 992604d02e6d9c6d786c24a706a71ecffe1020fc1ef264044474cd81fa2c3919
MD5 f33cdbc6503c76a5efa178cc2b177f50
BLAKE2b-256 03d04db86529117320de0c84afd90e70bb47434625875e34fcef9d8c127c5b16

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ef31cbfe458e21c6122ba8150ff060e0c7789ed0d26eb423f25472584920b555
MD5 53f7d7f06d0a6f3aaac51f83b0bc001a
BLAKE2b-256 58b614b2c84ff90ddb370c81d27503f4a0fcf071496416f4855f6cc8c5d81c35

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 46f1326ca6e65b0879d23ca302c0f2415aad42ff0309b9c818e7949fe19a41d8
MD5 c7c295a6483eedd6d2fd32490131620a
BLAKE2b-256 03d259f01110660081cce9c0bc30ebd0b5ee250dacf658e3248ed92f01e0e8ee

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 ccf5249114cc3e772ecdd88a98a86eca0fd74c61ce32a94743758c083fc05d48
MD5 a7902f51921acaa714c28250ea651c8a
BLAKE2b-256 c2dcc1f2df4027e82fc54b5a473e4b250f5139faca49a0fbe29a48668d228f34

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 19c16ceb4a267a8789e25733e583983eeab9f0f8664e66b0bd1c5d21f14c2d4b
MD5 c168274521d624706caf850b257cf582
BLAKE2b-256 124d014fbe803204cab0947ee428f09f658a29632053dde1d3c6176bb4f0fd4c

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b310768746dd314ea6e2ff4cc89ef215426813396ff4e94ee8e6f7096c8b6e03
MD5 92ab0d50bbd241ceb6a0af5d962e5997
BLAKE2b-256 6a404b224cb0582b2dca1786726e6cdabe26abbf757d7f6718332f186da155d2

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.5.9-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 954cc214c04663ee6d266fc61739cad83054683048de65c5bd1d640ad28098ac
MD5 8dfde059216b5fba204c2b98739af92e
BLAKE2b-256 c78a4e88a5f7c3e98489aac4dd23142723d907b2a595b4a6abcbacabefeded09

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a6a563446a41adc451393dc6b8e6ad87979efaee3c8738690a8d1b08ebead1b4
MD5 ae6a15cc70cef386810e39301c684c1b
BLAKE2b-256 7790df6d982b03e3614785c6937ba51b57f6733d97d2ee1c9bc7531dbfab3a54

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 c010eb8caca74bdb40c07498d7ece26b4428fd3f04aa8a72c9ac6f79e8faaac6
MD5 b648565041702f34b74273a11cbd1d72
BLAKE2b-256 042aff713fff0c566507c06a4ce2dc0ae8e7eeebc88811a95fc81cf1e7d534dd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 6ba42b2e7e7f46cf68cc6a5ca36fa07959f9bbd9c6bdcc47b6ee76549a590248
MD5 01f2683124b6cff828e1b6830fff165c
BLAKE2b-256 3c0756987b35e89edf47e4a38cf2845aeee476bfa688a6bdbd3e820cda461dc1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 3b1e39888c5e0c7d92cea4fc777396c4a90363b05de75d02eb459a4752200808
MD5 e2624ee579e8aedf56f15d649cebac98
BLAKE2b-256 98809523d196010031df25f7177ee0a467efbee436324038e5d99def17a57515

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 71b61c5bfe1c806332defc42ad6c780b3c55f661986d7f40283a3a88274b4c00
MD5 d24afc79ebcc5c6b80df0a0580d9babf
BLAKE2b-256 9a0b932473194bd563f342a412ae2ffbbd6da608306a2bc4e99249a41c2b0b92

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 ed457d8e98ae812ed7732bef7bf78de78e834eae0372a74e23ca90ef21d910f9
MD5 ad3689bde9a2f5ed39f98994953fb8e9
BLAKE2b-256 4b0a8731e8b8806174c9cdd5903f80a14990331c1f42fc4209b540952e9e010d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 0f03aa6898aaaac4592479821df16e68e8d0e29e903e65d8f2dfb2f19028a989
MD5 e2365a01b1eb91aa3c7bb1413c4d8fd5
BLAKE2b-256 e32a996efbd59ce6b5d4a09e3af6180ceb62af171f4a9a6fb557d2f0ae0d462b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d6b8a143aca6c39b446ea8092cde25cc8fe9304d4f5fecfbc1a9dbb0282703c2
MD5 d0b6c622c06329319a5d1e1350407a89
BLAKE2b-256 557f725a0a2b245a4cf0c4bab29d0e97c74285d94136a65d1b55a6459a583502

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 7b92817338591505f282cf3864c145244b1edcf5381d237038df955001091538
MD5 4ef8cdb22bcce9904cdf767bd5b03237
BLAKE2b-256 f6cea91cf555afb51f3b74a182e24ba073b91ea7bb64592fc4b315c111bb19fd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 446ddd671e43ab535810c4b21cff7104945c701d4a14d1e6d1cd6f4e445a8bea
MD5 ad2c7b948a0bb4808ce719e0bc283489
BLAKE2b-256 cdcaae5fd6edc59b7f84b904b31d6ec39a860cbcecd10f64bd5a062ca83a4864

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b4bb445ff3f725f59df8f6014edb547ee928ec7023a774f6a39a3f953038cbb2
MD5 7321bacac46e022f78407cd114854d40
BLAKE2b-256 d4c85cdfbf0b5dc6599e1b6131eff43262e5275d4ec3469ce10216061659aadb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 15ee42209947f4ca045412eae98416317238163618ace2a8e54f99586a466733
MD5 5a4f17666665cfaf47ad1c71ea05addf
BLAKE2b-256 1681075930d9fa28c4ea1f53398dd015ee7c882f623539759113cda1257f4b82

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bfe1ce50cbfb569d74e1e4337da6468961f31dbea55fd85aa5de59c0947a805a
MD5 b8c790403fd87132e824216713d65508
BLAKE2b-256 89a94ed972ad263963b860b7c3e86e0e1bcc791def47b43b8c8efe57e710f139

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.5.9-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 a9e1328e17c84c1a5d22ec9f785ecef4a967fab9a42b6a8dc3bcbebd0a0c9e44
MD5 0dad4ac268375b6386ec881c75543a78
BLAKE2b-256 feed0ad2c8edf634918eb4484365d3819fa7bd7f58daf807fe7fb21812c316e5

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