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.

It looks for the longest overall match. It doesn’t look for the longest match for each group.

>>> # 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.7.10.tar.gz (416.3 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.7.10-cp314-cp314t-win_arm64.whl (283.4 kB view details)

Uploaded CPython 3.14tWindows ARM64

regex-2026.7.10-cp314-cp314t-win_amd64.whl (283.7 kB view details)

Uploaded CPython 3.14tWindows x86-64

regex-2026.7.10-cp314-cp314t-win32.whl (274.6 kB view details)

Uploaded CPython 3.14tWindows x86

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

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

regex-2026.7.10-cp314-cp314t-musllinux_1_2_s390x.whl (856.7 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ s390x

regex-2026.7.10-cp314-cp314t-musllinux_1_2_riscv64.whl (773.1 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ riscv64

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

Uploaded CPython 3.14tmusllinux: musl 1.2+ ppc64le

regex-2026.7.10-cp314-cp314t-musllinux_1_2_aarch64.whl (801.5 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

regex-2026.7.10-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.7.10-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.7.10-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (917.6 kB view details)

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

regex-2026.7.10-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (871.3 kB view details)

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

regex-2026.7.10-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.7.10-cp314-cp314t-macosx_11_0_arm64.whl (294.6 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

regex-2026.7.10-cp314-cp314t-macosx_10_13_x86_64.whl (299.7 kB view details)

Uploaded CPython 3.14tmacOS 10.13+ x86-64

regex-2026.7.10-cp314-cp314t-macosx_10_13_universal2.whl (501.5 kB view details)

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

regex-2026.7.10-cp314-cp314-win_arm64.whl (281.0 kB view details)

Uploaded CPython 3.14Windows ARM64

regex-2026.7.10-cp314-cp314-win_amd64.whl (280.8 kB view details)

Uploaded CPython 3.14Windows x86-64

regex-2026.7.10-cp314-cp314-win32.whl (272.5 kB view details)

Uploaded CPython 3.14Windows x86

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

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.14musllinux: musl 1.2+ s390x

regex-2026.7.10-cp314-cp314-musllinux_1_2_riscv64.whl (766.0 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ riscv64

regex-2026.7.10-cp314-cp314-musllinux_1_2_ppc64le.whl (861.0 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ppc64le

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

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

regex-2026.7.10-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (777.3 kB view details)

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

regex-2026.7.10-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (800.7 kB view details)

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

regex-2026.7.10-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (911.6 kB view details)

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

regex-2026.7.10-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (866.2 kB view details)

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

regex-2026.7.10-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (797.1 kB view details)

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

regex-2026.7.10-cp314-cp314-macosx_11_0_arm64.whl (292.2 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

regex-2026.7.10-cp314-cp314-macosx_10_13_x86_64.whl (297.3 kB view details)

Uploaded CPython 3.14macOS 10.13+ x86-64

regex-2026.7.10-cp314-cp314-macosx_10_13_universal2.whl (497.1 kB view details)

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

regex-2026.7.10-cp313-cp313t-win_arm64.whl (279.3 kB view details)

Uploaded CPython 3.13tWindows ARM64

regex-2026.7.10-cp313-cp313t-win_amd64.whl (280.0 kB view details)

Uploaded CPython 3.13tWindows x86-64

regex-2026.7.10-cp313-cp313t-win32.whl (269.2 kB view details)

Uploaded CPython 3.13tWindows x86

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

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.13tmusllinux: musl 1.2+ s390x

regex-2026.7.10-cp313-cp313t-musllinux_1_2_riscv64.whl (772.9 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ riscv64

regex-2026.7.10-cp313-cp313t-musllinux_1_2_ppc64le.whl (866.6 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ppc64le

regex-2026.7.10-cp313-cp313t-musllinux_1_2_aarch64.whl (801.4 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

regex-2026.7.10-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (785.6 kB view details)

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

regex-2026.7.10-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (816.4 kB view details)

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

regex-2026.7.10-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.7.10-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (871.2 kB view details)

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

regex-2026.7.10-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.7.10-cp313-cp313t-macosx_11_0_arm64.whl (294.6 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

regex-2026.7.10-cp313-cp313t-macosx_10_13_x86_64.whl (299.7 kB view details)

Uploaded CPython 3.13tmacOS 10.13+ x86-64

regex-2026.7.10-cp313-cp313t-macosx_10_13_universal2.whl (501.5 kB view details)

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

regex-2026.7.10-cp313-cp313-win_arm64.whl (277.1 kB view details)

Uploaded CPython 3.13Windows ARM64

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

Uploaded CPython 3.13Windows x86-64

regex-2026.7.10-cp313-cp313-win32.whl (267.1 kB view details)

Uploaded CPython 3.13Windows x86

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

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.13musllinux: musl 1.2+ s390x

regex-2026.7.10-cp313-cp313-musllinux_1_2_riscv64.whl (765.8 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ riscv64

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

Uploaded CPython 3.13musllinux: musl 1.2+ ppc64le

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

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

regex-2026.7.10-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.7.10-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.7.10-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (912.4 kB view details)

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

regex-2026.7.10-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (865.5 kB view details)

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

regex-2026.7.10-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (796.8 kB view details)

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

regex-2026.7.10-cp313-cp313-macosx_11_0_arm64.whl (291.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

regex-2026.7.10-cp313-cp313-macosx_10_13_x86_64.whl (297.3 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

regex-2026.7.10-cp313-cp313-macosx_10_13_universal2.whl (496.9 kB view details)

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

regex-2026.7.10-cp312-cp312-win_arm64.whl (277.1 kB view details)

Uploaded CPython 3.12Windows ARM64

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

Uploaded CPython 3.12Windows x86-64

regex-2026.7.10-cp312-cp312-win32.whl (267.2 kB view details)

Uploaded CPython 3.12Windows x86

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

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

regex-2026.7.10-cp312-cp312-musllinux_1_2_s390x.whl (852.2 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ s390x

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

Uploaded CPython 3.12musllinux: musl 1.2+ riscv64

regex-2026.7.10-cp312-cp312-musllinux_1_2_ppc64le.whl (860.2 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ppc64le

regex-2026.7.10-cp312-cp312-musllinux_1_2_aarch64.whl (785.2 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

regex-2026.7.10-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.7.10-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (801.3 kB view details)

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

regex-2026.7.10-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (912.4 kB view details)

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

regex-2026.7.10-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (865.5 kB view details)

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

regex-2026.7.10-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (796.8 kB view details)

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

regex-2026.7.10-cp312-cp312-macosx_11_0_arm64.whl (292.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

regex-2026.7.10-cp312-cp312-macosx_10_13_x86_64.whl (297.4 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

regex-2026.7.10-cp312-cp312-macosx_10_13_universal2.whl (497.1 kB view details)

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

regex-2026.7.10-cp311-cp311-win_arm64.whl (276.9 kB view details)

Uploaded CPython 3.11Windows ARM64

regex-2026.7.10-cp311-cp311-win_amd64.whl (278.0 kB view details)

Uploaded CPython 3.11Windows x86-64

regex-2026.7.10-cp311-cp311-win32.whl (266.8 kB view details)

Uploaded CPython 3.11Windows x86

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

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

regex-2026.7.10-cp311-cp311-musllinux_1_2_s390x.whl (844.7 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ s390x

regex-2026.7.10-cp311-cp311-musllinux_1_2_riscv64.whl (763.4 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ riscv64

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

Uploaded CPython 3.11musllinux: musl 1.2+ ppc64le

regex-2026.7.10-cp311-cp311-musllinux_1_2_aarch64.whl (781.7 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

regex-2026.7.10-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (773.7 kB view details)

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

regex-2026.7.10-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (799.9 kB view details)

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

regex-2026.7.10-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.7.10-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (861.8 kB view details)

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

regex-2026.7.10-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (792.4 kB view details)

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

regex-2026.7.10-cp311-cp311-macosx_11_0_arm64.whl (290.7 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

regex-2026.7.10-cp311-cp311-macosx_10_9_x86_64.whl (295.9 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

regex-2026.7.10-cp311-cp311-macosx_10_9_universal2.whl (494.6 kB view details)

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

regex-2026.7.10-cp310-cp310-win_arm64.whl (276.9 kB view details)

Uploaded CPython 3.10Windows ARM64

regex-2026.7.10-cp310-cp310-win_amd64.whl (277.9 kB view details)

Uploaded CPython 3.10Windows x86-64

regex-2026.7.10-cp310-cp310-win32.whl (266.8 kB view details)

Uploaded CPython 3.10Windows x86

regex-2026.7.10-cp310-cp310-musllinux_1_2_x86_64.whl (782.2 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

regex-2026.7.10-cp310-cp310-musllinux_1_2_s390x.whl (837.2 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ s390x

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

Uploaded CPython 3.10musllinux: musl 1.2+ riscv64

regex-2026.7.10-cp310-cp310-musllinux_1_2_ppc64le.whl (848.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ppc64le

regex-2026.7.10-cp310-cp310-musllinux_1_2_aarch64.whl (775.1 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

regex-2026.7.10-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (770.0 kB view details)

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

regex-2026.7.10-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (786.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

regex-2026.7.10-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (794.2 kB view details)

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

regex-2026.7.10-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (899.6 kB view details)

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

regex-2026.7.10-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (852.2 kB view details)

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

regex-2026.7.10-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.7.10-cp310-cp310-macosx_11_0_arm64.whl (290.7 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

regex-2026.7.10-cp310-cp310-macosx_10_9_x86_64.whl (295.9 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

regex-2026.7.10-cp310-cp310-macosx_10_9_universal2.whl (494.7 kB view details)

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

File details

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

File metadata

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

File hashes

Hashes for regex-2026.7.10.tar.gz
Algorithm Hash digest
SHA256 1050fedf0a8a92e843971120c2f57c3a99bea86c0dfa1d63a9fac053fe54b135
MD5 7515d823b91c5e694a77d310a7630ecf
BLAKE2b-256 7b37451aaddbf50922f34d744ad5ca919ae1fcfac112123885d9728f52a484b3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp314-cp314t-win_arm64.whl
  • Upload date:
  • Size: 283.4 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.7.10-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 749b92640e1970e881fdf22a411d74bf9d049b154f4ef7232eeb9a90dd8be7f3
MD5 742d4a01dff6359ee14e27417dfc20b0
BLAKE2b-256 1bd33dae6a6ce46144940e64425e32b8573a393a009aeaf75fa6752a35399056

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 283.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.7.10-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 78712d4954234df5ca24fdadb65a2ab034213f0cdfde376c272f9fc5e09866bb
MD5 8d0ab8dde1d90d1b20062e6398436bdf
BLAKE2b-256 4e9ccd813ce9f3404c0443915175c1e339c5afd8fcda04310102eaf233015eef

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 274.6 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.7.10-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 dd7715817a187edd7e2a2390908757f7ba42148e59cad755fb8ee1160c628eca
MD5 0b5217847087b14ea759859ed580f5c2
BLAKE2b-256 a6b2124564af46bc0b592785610b3985315610af0a07f4cf21fa36e06c2398dd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 668ab85105361d0200e3545bec198a1acfc6b0aeb5fff8897647a826e5a171be
MD5 5870f1b10a285dffb5fa4e8f19d57b21
BLAKE2b-256 6de5dc35cea074dbdcb9776c4b0542a3bc326ff08454af0768ef35f3fc66e7fa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 4533af6099543db32ef26abc2b2f824781d4eebb309ab9296150fd1a0c7eb07d
MD5 78ee2342659f987c39e7d6f8b7a4562a
BLAKE2b-256 27bb734e978c904726664df47ae36ce5eca5065de5141185ae46efec063476a2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 3f361215e000d68a4aff375106637b83c80be36091d83ee5107ad3b32bd73f48
MD5 de75a992e7e56b9e011048fd15b1830e
BLAKE2b-256 e6b531a156c36acf10181d88f55a66c688d5454a344e53ccc03d49f4a48a2297

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 b862572b7a5f5ed47d2ba5921e63bf8d9e3b682f859d8f11e0e5ca46f7e82173
MD5 e429ae119da6b3d0b86e83352af36c19
BLAKE2b-256 1611fde67d49083fef489b7e0f841e2e5736516795b166c9867f05956c1e494b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0911e34151a5429d0325dae538ba9851ec0b62426bdfd613060cda8f1c36ec7f
MD5 b6374889c2e17b7c25494a4613ee8288
BLAKE2b-256 b45187ff99c849b56309c40214a72b54b0eef320d0516a8a516970cc8be1b725

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 494b19a5805438aeb582de99f9d97603d8fd48e6f4cc74d0088bb292b4da3b70
MD5 e69d850bc2f82d18e3c3e3f29a588d10
BLAKE2b-256 5c3320bc2bdd57f7e0fcc51be37e4c4d1bca7f0b4af8dc0a148c23220e689da8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8679f0652a183d93da646fcec8da8228db0be40d1595da37e6d74c2dc8c4713c
MD5 123f209585ac1312f4ae123e2687867a
BLAKE2b-256 03f7ebc15a39e81e6b58da5f913b91fc293a25c6700d353c14d5cd25fc85712a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 dd3b6d97beb39afb412f2c79522b9e099463c31f4c49ab8347c5a2ca3531c478
MD5 cf3a714df928da407e8bfe1492e1c85b
BLAKE2b-256 5d7822adf72e614ba0216b996e9aaef5712c23699e360ea127bb3d5ee1a7666f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 177f930af3ad72e1045f8877540e0c43a38f7d328cf05f31963d0bd5f7ecf067
MD5 25aacfb62d88fe63431dc0df6a86e13e
BLAKE2b-256 b67df8bee4c210c42c7e8b952bb9fb7099dd7fb2f4bd0f33d0d65a8ab08aafc0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5eab9d3f981c423afd1a61db055cfe83553c3f6455949e334db04722469dd0a2
MD5 dfe7788d8de734c6eac6960916f3f92a
BLAKE2b-256 e0a7b6db1823f3a233c2a46f854fdc986f4fd424a84ed557b7751f2998efb266

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6e3448e86b05ce87d4eb50f9c680860830f3b32493660b39f43957d6263e2eba
MD5 b49a400f966ca1f7060750252659951d
BLAKE2b-256 657036fa4b46f73d268c0dbe77c40e62da2cd4833ee206d3b2e438c2034e1f36

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 538ddb143f5ca085e372def17ef3ed9d74b50ad7fc431bd85dc50a9af1a7076f
MD5 be826bba1551cad5dc78ee849b9ce3e9
BLAKE2b-256 73a58d42b2f3fd672908a05582effd0f88438bf9bb4e8e02d69a62c723e23601

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314t-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 103e8f3acc3dcede88c0331c8612766bdcfc47c9250c5477f0e10e0550b9da49
MD5 73cc3d2e4540e1e484745f2c2e624e5b
BLAKE2b-256 19024061fc71f64703e0df61e782c2894c3fbc089d277767eff6e16099581c73

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp314-cp314-win_arm64.whl
  • Upload date:
  • Size: 281.0 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.7.10-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 9cd5b6805396157b4cf993a6940cbb8663161f29b4df2458c1c9991f099299c5
MD5 8d5cef942435cc86fbc5c4efda1c2c4f
BLAKE2b-256 e81a4f6099d2ba271502fdb97e697bae2ed0213c0d87f2273fe7d21e2e401d12

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 280.8 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.7.10-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 2129e4a5e86f26926982d883dff815056f2e98220fdf630e59f961b578a26c43
MD5 59b54c0fed87fb3f4543f3491668ce82
BLAKE2b-256 99165c7050e0ef7dd8889441924ff0a2c33b7f0587c0ccb0953fe7ca997d673b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp314-cp314-win32.whl
  • Upload date:
  • Size: 272.5 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.7.10-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 f988a1cec68058f71a38471813fba9e87dffe855582682e8a10e40ece12567a2
MD5 3e203f453944c9df6c7fec379150797f
BLAKE2b-256 ba52aab92420c8aa845c7bcbe68dc65023d4a9e9ea785abf0beb2198f0de5ba1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 834271b1ff2cfa1f67fcd65a48bf11d11e9ab837e21bf79ce554efb648599ae8
MD5 65939c8c2b4d1e88fc30d0d7ab3c4462
BLAKE2b-256 eea5b9427ed53b0e14c540dc436d56aaf57a19fb9183c6e7abd66f4b4368fbad

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 e54e088dc64dd2766014e7cfe5f8bc45399400fd486816e494f93e3f0f55da06
MD5 3fb20da9809ff0327af08ff48c691d63
BLAKE2b-256 73e1fa034e6fa8896a09bd0d5e19c81fdc024411ab37980950a0401dccee8f6d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 9e9aaef25a40d1f1e1bbb1d0eb0190c4a64a7a1750f7eb67b8399bed6f4fd2a6
MD5 49bebde81ab1ce64974703c922e692eb
BLAKE2b-256 bc11487ff55c8d515ec9dd60d7ba3c129eeaa9e527358ed9e8a054a9e9430f81

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 ec1c44cf9bd22079aac37a07cb49a29ced9050ab5bddf24e50aba298f1e34d90
MD5 93dff70d3bc40982d75c5e4749f4e292
BLAKE2b-256 99ca69f3a7281d86f1b592338007f3e535cc219d771448e2b61c0b56e4f9d05b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d50714405845c1010c871098558cfe5718fe39d2a2fab5f95c8863caeb7a82b3
MD5 805180054df0db91c1171a4ec5c3ef6a
BLAKE2b-256 407a5f1bf433fa446ecb3aab87bb402603dc9e171ef8052c1bb8690bb4e255a3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 a72ecf5bfd3fc8d57927f7e3ded2487e144472f39010c3acaec3f6f3ff53f361
MD5 43e5cca9a44327964ecf1714be24f783
BLAKE2b-256 66199d252fd969f726c8b56b4bacf910811cc70495a110907b3a7ccb96cd9cad

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 38a5926601aaccf379512746b86eb0ac1d29121f6c776dac6ac5b31077432f2c
MD5 755efc4edca298a5259f2b84d4f2b59b
BLAKE2b-256 a2caa3126888b2c6f33c7e29144fedf85f6d5a52a400024fa045ad8fc0550ef1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 d3e10779f60c000213a5b53f518824bd07b3dc119333b26d70c6be1c27b5c794
MD5 e25800edad3e7d662af008cee4445988
BLAKE2b-256 a2e3a2a905807bba3bcd90d6ebbb67d27af2adf7d41708175cbc6b956a0c75f1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 9dc55698737aca028848bde418d6c51d74f2a5fd44872d3c8b56b626729adb89
MD5 8be5e8355d5b2a9e190ce62989113e60
BLAKE2b-256 8777f6805d97f15f5a710bdfd56a768f3468c978239daf9e1b15efd8935e1967

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 460176b2db044a292baaee6891106566739657877af89a251cded228689015a6
MD5 a9c779d4944c987495b5e851220d0712
BLAKE2b-256 180b34cbea16c8fea9a18475a7e8f5837c70af451e738bfeb4eb5b029b7dc07a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cfeb11990f59e59a0df26c648f0adfcbf27be77241250636f5769eb08db662be
MD5 479d88e03a8db6901fe33dfe8ba7166b
BLAKE2b-256 b26cfb40bb34275d3cd4d7a376d5fb2ea1f0f4a96fd884fa83c0c4ae869001bf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 441edc66a54063f8269d1494fc8474d06605e71e8a918f4bcfd079ebda4ce042
MD5 5303b14e4baff0e8e9166ea78098bcaf
BLAKE2b-256 0f7eca0b1a87192e5828dbc16f16ae6caca9b67f25bf729a3348468a5ff52755

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp314-cp314-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 39f81d1fdf594446495f2f4edd8e62d8eda0f7a802c77ac596dc8448ad4cc5ca
MD5 cdb3e24988668dff163cc02ab6bc5d61
BLAKE2b-256 6a4aa7fa3ada9bd2d2ce20d56dfceec6b2a51afeed9bf3d8286355ceec5f0628

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp313-cp313t-win_arm64.whl
  • Upload date:
  • Size: 279.3 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.7.10-cp313-cp313t-win_arm64.whl
Algorithm Hash digest
SHA256 3d8ef9df02c8083c7b4b855e3cb87c8e0ebbcfea088d98c7a886aaefdf88d837
MD5 fdb482c35abc8f4a6986d8e0249cd746
BLAKE2b-256 cda9e22e997587bc1d588b0b2cd0572027d39dd3a006216e40bbf0361688c51c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp313-cp313t-win_amd64.whl
  • Upload date:
  • Size: 280.0 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.7.10-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 c57b6ad3f7a1bdd101b2966f29dc161adf49727b1e8d3e1e89db2eda8a75c344
MD5 e5bb1207b3a0fc7cdf324957020096ec
BLAKE2b-256 b69ceaac34f8452a838956e7e89852ad049678cdc1af5d14f72d3b3b658b1ea5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp313-cp313t-win32.whl
  • Upload date:
  • Size: 269.2 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.7.10-cp313-cp313t-win32.whl
Algorithm Hash digest
SHA256 a2d6d30be35ddd70ce0f8ee259a4c25f24d6d689a45a5ac440f03e6bcc5a21d1
MD5 1010aca9af2b2f424740f98cad1ea5a5
BLAKE2b-256 e0b8f037d1bf2c133cb24ceb6e7d81d08417080390eddab6ddfd701aa7091874

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 cfcec18f7da682c4e2d82112829ce906569cb8d69fa6c26f3a50dfbed5ceb682
MD5 31d3e91afde74b148faebaa727da7388
BLAKE2b-256 a471a48e43909b6450fb48fa94e783bef2d9a37179258bc32ef2283955df7be7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 53f54993b462f3f91fea0f2076b46deb6619a5f45d70dbd1f543f789d8b900ef
MD5 98d9941501a3eb072b23440ec71b9013
BLAKE2b-256 c10f7c13999eef3e4186f7c79d4950fa56f041bf4de107682fb82c80db605ff9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 2bc350e1c5fa250f30ab0c3e38e5cfdffcd82cb8af224df69955cab4e3003812
MD5 9d43fb714b1c39117ceabcfaef860d58
BLAKE2b-256 8d14f5914a6d9c5bc63b9bed8c9a1169fb0be35dbe05cdc460e17d953031a366

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 2c66a8a1969cfd506d1e203c0005fd0fc3fe6efc83c945606566b6f9611d4851
MD5 d02cf20a565593e07bdc0170035d1664
BLAKE2b-256 f722630f31f5ea4826167b2b064d9cac2093a5b3222af380aa432cfe1a5dabcd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 ee877b6d78f9dff1da94fef51ae8cf9cce0967e043fdcc864c40b85cf293c192
MD5 41ff25cce3191a4919de4ef687b2d526
BLAKE2b-256 6dd835d30d6bdf1ef6a5430e8982607b3a6db4df1ddedbe001e43435585d88ba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 cae27622c094558e519abf3242cf4272db961d12c5c9a9ffb7a1b44b2627d5c6
MD5 6ce369a1bcdcaa406879a1d652b44457
BLAKE2b-256 a89f1859403654e3e030b288f06d49233c6a4f889d62b84c4ef3f3a28653173d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3e23458d8903e33e7d27196d7a311523dc4e2f4137a5f34e4dbd30c8d37ff33e
MD5 e2d8832281fc3b4ef15f8436ac875773
BLAKE2b-256 738774dac8efb500db31cb000fda6bae2be45fc2fbf1fa9412f445fbb8acbe37

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 a68b637451d64ba30ed8ae125c973fa834cc2d37dfa7f154c2b479015d477ba8
MD5 1fff379d719285025617a98360ed2085
BLAKE2b-256 3b32423ed27c9bae2092a453e853da2b6628a658d08bb5a6117db8d591183d85

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 21150500b970b12202879dfd82e7fd809d8e853140fff84d08e57a90cf1e154e
MD5 6ed3667294d224dd89898cf2ab543bcd
BLAKE2b-256 069816c255c909714de1ee04da6ae30f3ee04170f300cdc0dcf57a314ee4816a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 fadb07dbe36a541283ff454b1a268afd54b077d917043f2e1e5615372cb5f200
MD5 14d8bce9b56ce7c79c89e5c888b9d868
BLAKE2b-256 8288e52550185d6fda68f549b01239698697de47320fd599f5e880b1986b7673

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bb5aab464a0c5e03a97abad5bdf54517061ebbf72340d576e99ff661a42575cc
MD5 aea014dee7ad73a02a7de4881ebd5011
BLAKE2b-256 f6207909be4b9f449f8c282c14b6762d59aa722aeaeebe7ee4f9bb623eeaa5e0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 3f03b92fb6ec739df042e45b06423fc717ecf0063e07ffe2897f7b2d5735e1e8
MD5 8105a36ad854d62ef7ed25888976fd3f
BLAKE2b-256 38a55b167cebde101945690219bf34361481c9f07e858a4f46d9996b80ec1490

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313t-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 2b93eafd92c4128bab2f93500e8912cc9ecb3d3765f6685b902c6820d0909b6b
MD5 b5895a4b0f2b8348cfabf7128aef3e53
BLAKE2b-256 7de926decfd3e85c09e42ff7b0d23a6f51085ca4c268db15f084928ca33459c6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 277.1 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.7.10-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 82ab8330e7e2e416c2d42fcec67f02c242393b8681014750d4b70b3f158e1f08
MD5 b50e6a95a43ae782b9b8c300fe0ae209
BLAKE2b-256 00a69d8935aaa940c388496aa1a0c82669cc4b5d06291c2712d595e3f0cf16d3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-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.7.10-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 5e792367e5f9b4ffb8cad93f1beaa91837056b94da98aa5c65a0db0c1b474927
MD5 eee0fe0d61c08afd46107f353b23608d
BLAKE2b-256 886ce2a6f9a6a905f923cfc912298a5949737e9504b1ca24f29eda8d04d05ece

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp313-cp313-win32.whl
  • Upload date:
  • Size: 267.1 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.7.10-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 74ae61d8573ecd51b5eeee7be2218e4c56e99c14fa8fcf97cf7519611d4be92e
MD5 132f29ac53283c147215fcaf88d35aa7
BLAKE2b-256 f6063c7cec7817bda293e13c8f88aed227bbcf8b37e5990936ff6442a8fdf11a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 64722a5031aeace7f6c8d5ea9a9b22d9368af0d6e8fa532585da8158549ea963
MD5 dd75b5ba800dd742ba0fc4be804ec092
BLAKE2b-256 665876fec29898cf5d359ab63face50f9d4f7135cc2eca3477139227b1d09952

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 d0834c84ae8750ae1c4cede59b0afd4d2f775be958e11b18a3eea24ed9d0d9f1
MD5 780ac97264390688c603fe4f7b7ff280
BLAKE2b-256 0c6279a2cd9556a3329351e370929743ef4f0ccc0aaff6b3dc414ae5fa4a1302

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 8e26a075fa9945b9e44a3d02cc83d776c3b76bb1ff4b133bbfa620d5650131da
MD5 88246b8552f77a6277553e9f72cd14bd
BLAKE2b-256 50b1e1d32cd944b599534ae655d35e8640d0ec790c0fa12e1fb29bf434d50f55

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 13fba679fe035037e9d5286620f88bbfd105df4d5fcd975942edd282ab986775
MD5 40dd557b66da70bc72f90dd34b3a4839
BLAKE2b-256 6628372859ea693736f07cf7023247c7eca8f221d9c6df8697ff9f93371cca08

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 41a47c2b28d9421e2509a4583a22510dc31d83212fcf38e1508a7013140f71a8
MD5 7089b5ac16a9309895ffc384db4b60f4
BLAKE2b-256 336141ab0de0e4574da1071c151f67d1eb9db3d92c43e31d64d2e6863c3d89bf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 c622f4c638a725c39abcb2e680b1bd592663c83b672a4ed350a17f806d75618e
MD5 5baac20da5935b948f00fb85130c663a
BLAKE2b-256 33be171c3dad4d77000e1befeff2883ca88734696dfd97b2951e5e074f32e4dd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1f0d4ccf70b1d13711242de0ba78967db5c35d12ac408378c70e06295c3f6644
MD5 71a6ff1d5fd7fcaf39f13a0a126c0153
BLAKE2b-256 cc29a1b0c109c9e878cb04b931bfe4c54332d692b93c322e127b5ae9f25b0d9e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 91b916d495db3e1b473c7c8e68733beec4dce8e487442db61764fff94f59740e
MD5 8abdb41270285756c98bf968afb98628
BLAKE2b-256 70576511ad809bb3122c65bbeeffa5b750652bb03d273d29f3acb0754109b183

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 234f8e0d65cf1df9becadae98648f74030ee85a8f12edcb5eb0f60a22a602197
MD5 982070c063d2b39cac4b29b43019e3b0
BLAKE2b-256 65393e49d9ff0e0737eb8180a00569b47aabb59b84611f48392eba4d998d91a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e6b6a11bf898cca3ce7bfaa17b646901107f3975677fbd5097f36e5eb5641983
MD5 af1bb385ed95a3dd654edb44228a937b
BLAKE2b-256 1ac88e1c3c86ebcee7effccbd1f7fc54fe3af22aa0e9204503e2baea4a6ff001

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 14d27f6bd04beb01f6a25a1153d73e58c290fd45d92ba56af1bb44199fd1010d
MD5 9654f85fda6d6aec1cab46055addb8cd
BLAKE2b-256 526f48a912054ffcb756e374207bb8f4430c5c3e0ffa9627b3c7b6661844b30a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 b96341cb29a3faa5db05aff29c77d141d827414f145330e5d8846892119351c1
MD5 b57a9662bc745cb52f0d403686b285a1
BLAKE2b-256 f651600882cd5d9a3cf083fd66a4064f5b7f243ba2a7de2437d42823e286edaf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 4db009b4fc533d79af3e841d6c8538730423f82ea8508e353a3713725de7901c
MD5 29d667a2add7f72763f4b56792fce06c
BLAKE2b-256 e0880c977b9f3ba9b08645516eca236388c340f56f7a87054d41a187a04e134c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 277.1 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.7.10-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 87794549a3f5c1c2bdfba2380c1bf87b931e375f4133d929da44f95e396bf5fe
MD5 ac1ecdc04416198e027d956641f4d3df
BLAKE2b-256 366fd069dd12872ea1d50e17319d342f89e2072cae4b62f4245009a1108c74d8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-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.7.10-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 ecae626449d00db8c08f8f1fc00047a32d6d7eb5402b3976f5c3fda2b80a7a4f
MD5 dd22f34d5bf4bda9f26611432f9993a2
BLAKE2b-256 35739f5aade65bb98cc6e99c336e45a49a658300720c16721f3e687f8d754fec

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp312-cp312-win32.whl
  • Upload date:
  • Size: 267.2 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.7.10-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 eac1207936555aa691ce32df1432b478f2729d54e6d93a1f4db9215bcd8eb47d
MD5 053e4dce67fc971e4b070e8e390b6f10
BLAKE2b-256 e33c4bc8be9a155035e63780ccac1da101f36194946fdc3f6fce90c7179fc6df

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 58a4571b2a093f6f6ee4fd281faa8ebf645abcf575f758173ea2605c7a1e1ecb
MD5 26657651c47e01761823c69699bb440c
BLAKE2b-256 033389072f2060e6b844b4916d5bc40ef01e973640c703025707869264ec75ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 ebbf0d83ed5271991d666e54bb6c90ac2c55fb2ef3a88740c6af85dc85de2402
MD5 0d54cd602110ff56eb732169a97d4a5b
BLAKE2b-256 12e6e613c6755d19aca9d977cdc3418a1991ffc8f386779752dd8fdfa888ea89

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 396ea70e4ea1f19571940add3bad9fd3eb6a19dc610d0d01f692bc1ba0c10cb4
MD5 7c921dd222b5581c9d559dd697bcc87a
BLAKE2b-256 2a4008ae3ba45fe79e48c9a888a3389a7ee7e2d8c580d2d996da5ece02dfdcb9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 9d028d189d8f38d7ff292f22187c0df37f2317f554d2ed9a2908ada330af57c0
MD5 781a1001c14ef5c717b471dd852aef13
BLAKE2b-256 ad1c60d88afd5f98d4b0fb1f8b8969270628140dc01c7ff93a939f2aa83f31a6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 aa34473fbcc108fea403074f3f45091461b18b2047d136f16ffaa4c65ad46a68
MD5 180ffa5a58fb106cb573a4f53b06fe2f
BLAKE2b-256 6a9aec579b4f840ac59bc7c192b56e66abd4cbf385615300d59f7c94bf6863ae

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 65ee5d1ac3cd541325f5ac92625b1c1505f4d171520dd931bda7952895c5321a
MD5 5c1bb4313ca41920a1b0fbeea74b6878
BLAKE2b-256 5fe360a40ec02a2315d826414a125640aceb6f30450574c530c8f352110ece0e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f6222cafe00e072bb2b8f14142cd969637411fbc4dd3b1d73a90a3b817fa046f
MD5 1ebb8dafc7360a63a411ec710fe39817
BLAKE2b-256 0b1c8687de3a6c3220f4f872a9bf4bcd8dc249f2a96e7dddfa93de8bd4d16399

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 c2cbd385d82f63bb35edb60b09b08abad3619bd0a4a492ae59e55afaf98e1b9d
MD5 f2a6cb6d70668f9bfaa18efda92ad4f5
BLAKE2b-256 0e06f0b31afc16c1208f945b66290eb2a9936ab8becdfb23bbcedb91cc5f9d9b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 948dfc62683a6947b9b486c4598d8f6e3ecc542478b6767b87d52be68aeb55c6
MD5 f4f62d23efc5c813f03da449a2db1826
BLAKE2b-256 d467c1ccbada395c10e334763b583e1039b1660b142303ebb941d4269130b22f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f3463a5f26be513a49e4d497debcf1b252a2db7b92c77d89621aa90b83d2dd38
MD5 ea5ab6d3b801cb793df5314ddd06d2b3
BLAKE2b-256 ad1e5ce0fbe9aab071893ce2b7df020d0f561f7b411ec334124302468d587884

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fe7ff456c22725c9d9017f7a2a7df2b51af6df77314176760b22e2d05278e181
MD5 9dfe922c641fa8c5567bd55cd7f7d192
BLAKE2b-256 ca2d35809de392ab66ba439b58c3187ae3b8b53c883233f284b59961e5725c99

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 da6ef4cb8d457aab0482b50120136ae94238aaa421863eaa7d599759742c72d6
MD5 9607ab203ff25423ca15bb3f07ea888a
BLAKE2b-256 91eb04534f4263a4f658cd20a511e9d6124350044f2214eb24fee2db96acf318

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 7252b48b0c60100095088fbeb281fca9a4fcf678a4e04b1c520c3f8613c952c4
MD5 b7ef8f9844cbcd2f86f6c22b8161e634
BLAKE2b-256 b39c2503d4ccf3452dc323f8baa3cf3ee10406037d52735c76cfced81423f183

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 276.9 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.7.10-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 3750c42d47712e362158a04d0fd80131f73a55e8c715b2885442a0ff6f9fc3fc
MD5 15668341adf3f49fc75bf3ef6cb94974
BLAKE2b-256 2bde61c8174171134cebb834ca9f8fe2ff8f49d8a3dd43453b48b537d0fbb49b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 278.0 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.7.10-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b1963ec5ba4d52788fb0eac6aca6eb8040e8e318c7e47ebbdfc09440c802919c
MD5 5fe21dbb58854adc6d1b0c4fa679500d
BLAKE2b-256 c464f30a163a65ed1f07ad12c53af00a6bd2a7251a5329fba5a08adc6f9e81a3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp311-cp311-win32.whl
  • Upload date:
  • Size: 266.8 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.7.10-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 6cbedeb5112f59dbd169385459b9943310bdd241c6966c19c5f6e2295055c93a
MD5 fe7225f1df25492f763c6a8262f31fe5
BLAKE2b-256 60edb387e84c8a3d6aa115dfb56865437a3fbaf28f4a6fb3b76cc6cce38ced70

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e37aba1994d73b4944053ab65a15f313bd5c28c885dd7f0d494a11749d89db6e
MD5 96cc4a3bc3f982ca8b4b499114b20f3a
BLAKE2b-256 a1b52423acb98362184ad9c8eebabafa15188d6a177daab919add8f2120fc6cd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 bb52e10e453b5493afe1f7702a2973bc10f4dd8901c0f2ed869ffaa3f8319296
MD5 c7f6262515bcf7729d2135a5a773447d
BLAKE2b-256 3609e27e42d9d42edf71205c7e6f5b2902bc874ea03c557c80da03b8ed16c9bf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 80151ca5bfc6c4524186b3e08b499e97319b2001fc265ed2d4fc12c0d5692cdf
MD5 d1212f34d0c355f448203d6af54a042b
BLAKE2b-256 f8c747e9b8c8ee77723b9eda74f517b6b25d2f555cf276c063a9eeea35bd86d5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 4574feca202f8c470bf678aed8b5d89df04aaf8dc677f3b83d92825051301c0f
MD5 7e76449ff3340e4abc9b2845dccd5909
BLAKE2b-256 a4a8a5a3fad84f9a7f897619f0f8e0a2c64946e9709044a186a8f869fb5c332f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 982d07727c809b42a3968785354f11c3728414e4e90af0754345b431b2c32561
MD5 3aec385b83bf0fd93e70f409f0c5ea3a
BLAKE2b-256 fe763c0eaa426700dd2ba14f2335f2b700a4e1484202254192ae440b83b8352a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 732c19e5828eb287d01edb83b2eb87f283ba8e5fc3441c732709d3e8cbd14aaa
MD5 59d031ac1b9d2585d6aca16ae5488c5c
BLAKE2b-256 8f193a5ce23ea2eb1fe36306aef49c79746ce297e4b434aeb981b525c661413a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 724ee9379568658ec06362cf24325c5315cc5a67f61dfe585bfeff58300a355b
MD5 6ce58d2b3f3ddd0528cea437b313da8f
BLAKE2b-256 86b7d65aa2e9ffb18677cd0afbcf5990da8519a4e50778deb1bca49f043c5174

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 d3c75d57a00109255e60bc9c623b6ececaf7905eaab845c79f036670ed4750a2
MD5 71e99573596535da71079af1421281d6
BLAKE2b-256 b4a562655f6208d1170a3e9188d6a45d4af0a5ae3b9da8b87d474818ac5ff016

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 be4223af640d0aa04c05db81d5d96ada3ead9c09187d892fd37f4f97829480be
MD5 ca1196da3bf829826e4ac46eee035a40
BLAKE2b-256 dc0ed265e0cc6da47aea97e90eb896be2d2e8f92d16add13bac04fa46a0fd972

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0639b2488b775a0109f55a5a2172deebdedb4b6c5ab0d48c90b43cbf5de58d17
MD5 adff836dac9ccef9e82b8b94f5969e7d
BLAKE2b-256 b756d83c446de21c70ff49d2f1b2ff2196ac79a4ac6373d2cfe496011a250600

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8331484450b3894298bef8abecce532171ff6ac60b71f999eed10f2c01941a8a
MD5 ed36800e876c14e071d1d7dbfdfde6d6
BLAKE2b-256 8e9e8e07d0eea46d2cf36bf4d3794634bb0a820f016d31bc349dfef008d96b02

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 28a0973eeffff4292f5a7ee498ab65d5e94ee8cc9cea364239251eb4a260a0f1
MD5 19b48ba2eecfde4ae4f34f01d44624ab
BLAKE2b-256 e6b40086215709f0f705661f13ba81516287538886ef0d589c545c12b0484669

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 66d2c35587cd601c95965d5c0415058ba5cfd6ffbab7624ce198bd967102b341
MD5 f2cb209ab05cfa77b8deab197bcf5df2
BLAKE2b-256 3d16bfd13770be1acd1c05506b93fc6be15c759d6417595d1ba334d355efbf26

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp310-cp310-win_arm64.whl
  • Upload date:
  • Size: 276.9 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.7.10-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 081acf191b4d614d573a56cab69f948b6864daa5e3cc69f209ee92e26e454c2f
MD5 e73b5bb02109844ee0a67da26af030b4
BLAKE2b-256 7646596a7084918ddf18cea6fb0cc047af1f00cec8790962e8f2edee9b6ec749

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 277.9 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.7.10-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 e21e888a6b471b2bb1cdd4247e8d86632672232f29be583e7eafaa5f4634d34c
MD5 5a3da8ccc9f4fc9a75a7a84b7c7a592d
BLAKE2b-256 710022a554bb83203eef88a40ec2fe7cf9a6e5df8765d57f7a96ebe1af5d60c3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: regex-2026.7.10-cp310-cp310-win32.whl
  • Upload date:
  • Size: 266.8 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.7.10-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 b04583e8867136ae66353fa274f45121ab3ec3166dc45aaff3655a5db90d9f0e
MD5 eecbd3d56ad718ff6efcf77c9e58aac0
BLAKE2b-256 e5a731ce26ec6465c12e7136ea9efcc716f5c55cac616f7958c33f0bf171781e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ed7c886a2fcbf14493ceaf9579394b33521730c161ebb8dad7db9c3e9fcab1a8
MD5 fbeeea60741581188b3d37395cfab4d1
BLAKE2b-256 a5ee00b9332c3c5d7460639f2c10fdc7197a64de6eaafff69478ec3332815335

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 5c363de7c0339d39341b6181839ed32509820b85ef506deafcf2e7e43baadab4
MD5 079261b2aa231eab2c910abb47e22baf
BLAKE2b-256 9ac5131dd41f73f766af6b08492073b5f28bc4f907b5571230c9f9e895e88302

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 31fa17378b29519bfd0a1b8ba4e9c10cf0baf1cf4099b39b0689429e7dc2c795
MD5 d2fc50a21f6de5b96a0c5a8fe7afcf49
BLAKE2b-256 845b37bf2e2fe810540ca90bbfe457a2f61088721c95d442eee8bb1257165ad7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 617e8f10472e34a8477931f978ff3a88d46ae2ba0e41927e580b933361f60948
MD5 dbaeae39c3b9f94ec15595c071f1b442
BLAKE2b-256 af2a1ba62462f679eb598d7325ff20798a264ddb9aa34a3f5d2ac388d54c6e4b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b56416091bfd7a429f958f69aaf6823c517be9a49cb5bf1daa3767ce8bf8095e
MD5 27fb403b41b72b9b36bb8c157ea6fca1
BLAKE2b-256 af82c56db326ac5f852865bd78d49a275757cc367e8114b13bc1015ed2491db1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 ab39d2c967aae3b48a412bff9cdbe7cd7559cd1e277599aceaeada7bc82b7200
MD5 1d2141af468b2e7616e7e9d82bf67ac1
BLAKE2b-256 65d869ec8c062bbba8d4d153f9eb70ab43564f591035b81fc4ea7eb059fdf71c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 87b776cf2890e356e4ab104b9df846e169da3eb5b0f110975547091f4e51854e
MD5 d351c4301b8267b40c640fb0f157443d
BLAKE2b-256 53ccc21ebc520c3e17d93e495eb2de2b1c5ae5f6780ccdb298b2d8ce1e940820

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 53bbbd6c610489700f7110db1d85f3623924c3f7c760f987eca033867360788a
MD5 ce09c887484e5850b00e5c41916a059b
BLAKE2b-256 7f46602b7b81d26a53113d3cec6dd845fd664d7b854b0ea45245bfdd6b9dc9ef

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 9a094ed44a22f9da497453137c3118b531fd783866ab524b0b0fc146e7395e1d
MD5 b84591616de0c4b684146cb9f31bf8ae
BLAKE2b-256 d1de5ba208a0826117851f6c12af9ae7fae5838ccfde69b999b26c5fdc1cedc3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 2f98ef73a13791a387d5c841416ad7f52040ae5caf10bcf46fa12bd2b3d63745
MD5 faa0fb2dc61e343a492def401b3972a6
BLAKE2b-256 54ecf777841d88f0c9d46699daf16f86a8086e077e506603be212de2c4584f85

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ab2fb1f7a2deb4ca3ddebbae6b93905d21480a3b4e11de28d79d9fb0d316fcf8
MD5 fc4b7920b04df58f45dead7b38fea891
BLAKE2b-256 c79d76c6779e424c64740d2a564b7ecb389a62c77b6294127d34f52008c91ea7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 221f2771cb780186b94bbf125a151bbeb242fa1a971da6ad59d7b0370f19de9a
MD5 bfc07fa9541d54aedc900f0016c65375
BLAKE2b-256 36574d724eeb1c440d71ccd6400d33b62b911bb62ca05385fe1961556e628319

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f0192e5f1cfc70e3cb35347135dd02e7497b3e7d83e378aa226d8b3e53a93f19
MD5 8246176ea355c402a63bb521ba6b83f4
BLAKE2b-256 3af2eed2ce38cc38def9c366d060ec739ff5f235a33647ceb73ae6be37306d39

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.7.10-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 799a369bdab91dcf0eb424ebd7aa9650897025ce22f729248d8f2c72002c4daa
MD5 7bf3da67d8c2909660c9f42d49884d84
BLAKE2b-256 b36962bb7d63f26698949c905cb7ebe29c7b0659e2a7f2a50c35cc29640b0852

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