Skip to main content

Alternative regular expression module, to replace re.

Project description

Introduction

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

Python 2

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

PyPy

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

Multithreading

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

Unicode

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

Flags

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

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

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

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

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

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

Old vs new behaviour

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

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

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

    • Indicated by the VERSION0 flag.

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

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

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

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

    • Only simple sets are supported.

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

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

    • Indicated by the VERSION1 flag.

    • Zero-width matches are handled correctly.

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

    • Nested sets and set operations are supported.

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

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

Case-insensitive matches in Unicode

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

Version 0 behaviour: the flag is off by default.

Version 1 behaviour: the flag is on by default.

Nested sets and set operations

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

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

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

  • Literal “–”

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

  • Literal “]”

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

  • Set which is:

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

  • but excluding:

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

Version 0 behaviour: only simple sets are supported.

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

Notes on named groups

All groups have a group number, starting from 1.

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

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

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

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

  • (\s+) is group 1.

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

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

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

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

Additional features

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

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

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

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

The test of a conditional pattern can be a lookaround.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Added \K (Hg issue 151)

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

It does not affect what groups return.

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

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

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

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

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

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

Fixed the handling of locale-sensitive regexes

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

Added partial matches (Hg issue 102)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Added capturesdict (Hg issue 86)

capturesdict is a combination of groupdict and captures:

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

captures returns a list of all the captures of a group

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

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

Added allcaptures and allspans (Git issue 474)

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

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

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

Allow duplicate names of groups (Hg issue 87)

Group names can be duplicated.

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

Added fullmatch (issue #16203)

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

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

Added subf and subfn

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

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

Added expandf to match object

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

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

Detach searched string

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

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

Recursive patterns (Hg issue 27)

Recursive and repeated patterns are supported.

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

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

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

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

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

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

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

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

Full Unicode case-folding is supported

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

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

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

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

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

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

The 3 types of error are:

  • Insertion, indicated by “i”

  • Deletion, indicated by “d”

  • Substitution, indicated by “s”

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

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

Examples:

  • foo match “foo” exactly

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

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

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

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

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

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

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

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

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

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

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

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

Examples:

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

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

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

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

Examples:

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

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

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

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

Further examples to note:

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

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

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

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

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

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

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

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

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

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

'anacondfuuoo bar'

it would’ve been an exact match.

However, there were insertions at positions 7 and 8:

'anaconda fuuoo bar'
        ^^

and deletions at positions 10 and 11:

'anaconda f~~oo bar'
           ^^

So the actual string was:

'anaconda foo bar'

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

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

One way is to build the pattern like this:

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

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

The new alternative is to use a named list:

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

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

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

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

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

Start and end of word

\m matches at the start of a word.

\M matches at the end of a word.

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

Unicode line separators

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

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

Set operators

Version 1 behaviour only

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

The operators, in order of increasing precedence, are:

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

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

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

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

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

Examples:

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

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

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

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

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

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

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

regex.escape (issue #2650)

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

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

regex.escape (Hg issue 249)

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

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

Repeated captures (issue #7132)

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

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

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

  • matchobject.starts([group])

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

  • matchobject.ends([group])

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

  • matchobject.spans([group])

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

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

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

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

Possessive quantifiers

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

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

Scoped flags (issue #433028)

(?flags-flags:...)

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

Definition of ‘word’ character (issue #1693050)

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

Variable-length lookbehind

A lookbehind can match a variable-length string.

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

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

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

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

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

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

Splititer

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

Subscripting match objects for groups

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

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

Named groups

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

Group references

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

Named characters \N{name}

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

Unicode codepoint properties, including scripts and blocks

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

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

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

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

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

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

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

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

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

A short form starting with In indicates a block property:

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

POSIX character classes

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

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

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

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

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

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

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

Search anchor \G

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

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

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

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

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

Reverse searching

Searches can also work backwards:

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

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

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

Matching a single grapheme \X

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

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

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

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

Note that there is only one group.

Default Unicode word boundary

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

Timeout

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

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

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

regex-2025.10.23.tar.gz (401.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-2025.10.23-cp314-cp314t-win_arm64.whl (274.5 kB view details)

Uploaded CPython 3.14tWindows ARM64

regex-2025.10.23-cp314-cp314t-win_amd64.whl (284.1 kB view details)

Uploaded CPython 3.14tWindows x86-64

regex-2025.10.23-cp314-cp314t-win32.whl (274.4 kB view details)

Uploaded CPython 3.14tWindows x86

regex-2025.10.23-cp314-cp314t-musllinux_1_2_x86_64.whl (799.6 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

regex-2025.10.23-cp314-cp314t-musllinux_1_2_s390x.whl (854.6 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ s390x

regex-2025.10.23-cp314-cp314t-musllinux_1_2_ppc64le.whl (868.3 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ppc64le

regex-2025.10.23-cp314-cp314t-musllinux_1_2_aarch64.whl (795.4 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

regex-2025.10.23-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (812.7 kB view details)

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

regex-2025.10.23-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (914.9 kB view details)

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

regex-2025.10.23-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (873.3 kB view details)

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

regex-2025.10.23-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (807.5 kB view details)

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

regex-2025.10.23-cp314-cp314t-macosx_11_0_arm64.whl (290.9 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

regex-2025.10.23-cp314-cp314t-macosx_10_13_x86_64.whl (292.5 kB view details)

Uploaded CPython 3.14tmacOS 10.13+ x86-64

regex-2025.10.23-cp314-cp314t-macosx_10_13_universal2.whl (491.9 kB view details)

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

regex-2025.10.23-cp314-cp314-win_arm64.whl (273.2 kB view details)

Uploaded CPython 3.14Windows ARM64

regex-2025.10.23-cp314-cp314-win_amd64.whl (280.2 kB view details)

Uploaded CPython 3.14Windows x86-64

regex-2025.10.23-cp314-cp314-win32.whl (271.5 kB view details)

Uploaded CPython 3.14Windows x86

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

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

regex-2025.10.23-cp314-cp314-musllinux_1_2_s390x.whl (849.9 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ s390x

regex-2025.10.23-cp314-cp314-musllinux_1_2_ppc64le.whl (859.2 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ppc64le

regex-2025.10.23-cp314-cp314-musllinux_1_2_aarch64.whl (787.8 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

regex-2025.10.23-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (803.1 kB view details)

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

regex-2025.10.23-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (911.4 kB view details)

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

regex-2025.10.23-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (864.8 kB view details)

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

regex-2025.10.23-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (798.9 kB view details)

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

regex-2025.10.23-cp314-cp314-macosx_11_0_arm64.whl (288.8 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

regex-2025.10.23-cp314-cp314-macosx_10_13_x86_64.whl (290.9 kB view details)

Uploaded CPython 3.14macOS 10.13+ x86-64

regex-2025.10.23-cp314-cp314-macosx_10_13_universal2.whl (489.0 kB view details)

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

regex-2025.10.23-cp313-cp313t-win_arm64.whl (271.2 kB view details)

Uploaded CPython 3.13tWindows ARM64

regex-2025.10.23-cp313-cp313t-win_amd64.whl (280.1 kB view details)

Uploaded CPython 3.13tWindows x86-64

regex-2025.10.23-cp313-cp313t-win32.whl (268.7 kB view details)

Uploaded CPython 3.13tWindows x86

regex-2025.10.23-cp313-cp313t-musllinux_1_2_x86_64.whl (799.3 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

regex-2025.10.23-cp313-cp313t-musllinux_1_2_s390x.whl (854.5 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ s390x

regex-2025.10.23-cp313-cp313t-musllinux_1_2_ppc64le.whl (868.2 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ppc64le

regex-2025.10.23-cp313-cp313t-musllinux_1_2_aarch64.whl (795.3 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

regex-2025.10.23-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (812.6 kB view details)

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

regex-2025.10.23-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (914.8 kB view details)

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

regex-2025.10.23-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (873.2 kB view details)

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

regex-2025.10.23-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (807.3 kB view details)

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

regex-2025.10.23-cp313-cp313t-macosx_11_0_arm64.whl (290.9 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

regex-2025.10.23-cp313-cp313t-macosx_10_13_x86_64.whl (292.5 kB view details)

Uploaded CPython 3.13tmacOS 10.13+ x86-64

regex-2025.10.23-cp313-cp313t-macosx_10_13_universal2.whl (491.9 kB view details)

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

regex-2025.10.23-cp313-cp313-win_arm64.whl (270.1 kB view details)

Uploaded CPython 3.13Windows ARM64

regex-2025.10.23-cp313-cp313-win_amd64.whl (276.9 kB view details)

Uploaded CPython 3.13Windows x86-64

regex-2025.10.23-cp313-cp313-win32.whl (266.1 kB view details)

Uploaded CPython 3.13Windows x86

regex-2025.10.23-cp313-cp313-musllinux_1_2_x86_64.whl (789.7 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

regex-2025.10.23-cp313-cp313-musllinux_1_2_s390x.whl (850.4 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ s390x

regex-2025.10.23-cp313-cp313-musllinux_1_2_ppc64le.whl (858.3 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ppc64le

regex-2025.10.23-cp313-cp313-musllinux_1_2_aarch64.whl (787.8 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

regex-2025.10.23-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (803.4 kB view details)

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

regex-2025.10.23-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (912.1 kB view details)

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

regex-2025.10.23-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (864.0 kB view details)

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

regex-2025.10.23-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (798.5 kB view details)

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

regex-2025.10.23-cp313-cp313-macosx_11_0_arm64.whl (288.7 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

regex-2025.10.23-cp313-cp313-macosx_10_13_x86_64.whl (291.0 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

regex-2025.10.23-cp313-cp313-macosx_10_13_universal2.whl (489.0 kB view details)

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

regex-2025.10.23-cp312-cp312-win_arm64.whl (270.1 kB view details)

Uploaded CPython 3.12Windows ARM64

regex-2025.10.23-cp312-cp312-win_amd64.whl (276.9 kB view details)

Uploaded CPython 3.12Windows x86-64

regex-2025.10.23-cp312-cp312-win32.whl (266.1 kB view details)

Uploaded CPython 3.12Windows x86

regex-2025.10.23-cp312-cp312-musllinux_1_2_x86_64.whl (789.6 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

regex-2025.10.23-cp312-cp312-musllinux_1_2_s390x.whl (850.5 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ s390x

regex-2025.10.23-cp312-cp312-musllinux_1_2_ppc64le.whl (858.4 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ppc64le

regex-2025.10.23-cp312-cp312-musllinux_1_2_aarch64.whl (787.7 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

regex-2025.10.23-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (803.4 kB view details)

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

regex-2025.10.23-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (912.1 kB view details)

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

regex-2025.10.23-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (864.0 kB view details)

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

regex-2025.10.23-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (798.4 kB view details)

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

regex-2025.10.23-cp312-cp312-macosx_11_0_arm64.whl (288.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

regex-2025.10.23-cp312-cp312-macosx_10_13_x86_64.whl (291.1 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

regex-2025.10.23-cp312-cp312-macosx_10_13_universal2.whl (489.2 kB view details)

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

regex-2025.10.23-cp311-cp311-win_arm64.whl (270.0 kB view details)

Uploaded CPython 3.11Windows ARM64

regex-2025.10.23-cp311-cp311-win_amd64.whl (277.6 kB view details)

Uploaded CPython 3.11Windows x86-64

regex-2025.10.23-cp311-cp311-win32.whl (265.7 kB view details)

Uploaded CPython 3.11Windows x86

regex-2025.10.23-cp311-cp311-musllinux_1_2_x86_64.whl (788.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.11musllinux: musl 1.2+ s390x

regex-2025.10.23-cp311-cp311-musllinux_1_2_ppc64le.whl (854.3 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ppc64le

regex-2025.10.23-cp311-cp311-musllinux_1_2_aarch64.whl (782.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

regex-2025.10.23-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (800.3 kB view details)

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

regex-2025.10.23-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (907.0 kB view details)

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

regex-2025.10.23-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (860.3 kB view details)

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

regex-2025.10.23-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (793.3 kB view details)

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

regex-2025.10.23-cp311-cp311-macosx_11_0_arm64.whl (288.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

regex-2025.10.23-cp311-cp311-macosx_10_9_x86_64.whl (290.4 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

regex-2025.10.23-cp311-cp311-macosx_10_9_universal2.whl (488.0 kB view details)

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

regex-2025.10.23-cp310-cp310-win_arm64.whl (270.0 kB view details)

Uploaded CPython 3.10Windows ARM64

regex-2025.10.23-cp310-cp310-win_amd64.whl (277.6 kB view details)

Uploaded CPython 3.10Windows x86-64

regex-2025.10.23-cp310-cp310-win32.whl (265.7 kB view details)

Uploaded CPython 3.10Windows x86

regex-2025.10.23-cp310-cp310-musllinux_1_2_x86_64.whl (779.7 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

regex-2025.10.23-cp310-cp310-musllinux_1_2_s390x.whl (836.0 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ s390x

regex-2025.10.23-cp310-cp310-musllinux_1_2_ppc64le.whl (845.6 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ppc64le

regex-2025.10.23-cp310-cp310-musllinux_1_2_aarch64.whl (774.6 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

regex-2025.10.23-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (782.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

regex-2025.10.23-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (791.5 kB view details)

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

regex-2025.10.23-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (898.6 kB view details)

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

regex-2025.10.23-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (850.6 kB view details)

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

regex-2025.10.23-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (781.5 kB view details)

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

regex-2025.10.23-cp310-cp310-macosx_11_0_arm64.whl (288.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

regex-2025.10.23-cp310-cp310-macosx_10_9_x86_64.whl (290.4 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

regex-2025.10.23-cp310-cp310-macosx_10_9_universal2.whl (488.0 kB view details)

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

regex-2025.10.23-cp39-cp39-win_arm64.whl (270.0 kB view details)

Uploaded CPython 3.9Windows ARM64

regex-2025.10.23-cp39-cp39-win_amd64.whl (277.7 kB view details)

Uploaded CPython 3.9Windows x86-64

regex-2025.10.23-cp39-cp39-win32.whl (265.7 kB view details)

Uploaded CPython 3.9Windows x86

regex-2025.10.23-cp39-cp39-musllinux_1_2_x86_64.whl (779.3 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

regex-2025.10.23-cp39-cp39-musllinux_1_2_s390x.whl (835.4 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ s390x

regex-2025.10.23-cp39-cp39-musllinux_1_2_ppc64le.whl (845.1 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ppc64le

regex-2025.10.23-cp39-cp39-musllinux_1_2_aarch64.whl (774.1 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

regex-2025.10.23-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (781.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

regex-2025.10.23-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (791.1 kB view details)

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

regex-2025.10.23-cp39-cp39-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (897.9 kB view details)

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

regex-2025.10.23-cp39-cp39-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (850.3 kB view details)

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

regex-2025.10.23-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (780.9 kB view details)

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

regex-2025.10.23-cp39-cp39-macosx_11_0_arm64.whl (288.3 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

regex-2025.10.23-cp39-cp39-macosx_10_9_x86_64.whl (290.4 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

regex-2025.10.23-cp39-cp39-macosx_10_9_universal2.whl (488.0 kB view details)

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

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23.tar.gz
Algorithm Hash digest
SHA256 8cbaf8ceb88f96ae2356d01b9adf5e6306fa42fa6f7eab6b97794e37c959ac26
MD5 ca1daefad796c5365fdbce055a21afb8
BLAKE2b-256 f8c81d2160d36b11fbe0a61acb7c3c81ab032d9ec8ad888ac9e0a61b85ab99dd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 a93e97338e1c8ea2649e130dcfbe8cd69bba5e1e163834752ab64dcb4de6d5ed
MD5 b19ba52c864726a5f748befbb4a4096f
BLAKE2b-256 51336a08ade0eee5b8ba79386869fa6f77afeb835b60510f3525db987e2fffc4

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 08a15d40ce28362eac3e78e83d75475147869c1ff86bc93285f43b4f4431a741
MD5 c6534be605e2e5ac0fee6bf2f8b525f4
BLAKE2b-256 efa0c84475e14a2829e9b0864ebf77c3f7da909df9d8acfe2bb540ff0072047c

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 1fa1186966b2621b1769fd467c7b22e317e6ba2d2cdcecc42ea3089ef04a8521
MD5 bf1fa1305b17b227b4d397999f6b9975
BLAKE2b-256 c7baa6168f542ba73b151ed81237adf6b869c7b2f7f8d51618111296674e20ee

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8f3e6d202fb52c2153f532043bbcf618fd177df47b0b306741eb9b60ba96edc3
MD5 c8f2a655b13ee372e303b3bb15e27276
BLAKE2b-256 e6572b6bbdbd2f24dfed5b028033aa17ad8f7d86bb28f1a892cac8b3bc89d059

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 1a56a54be3897d62f54290190fbcd754bff6932934529fbf5b29933da28fcd43
MD5 d58ffeb0a33603d2982a6ff936c20d09
BLAKE2b-256 b8f3bd5879e41ef8187fec5e678e94b526a93f99e7bbe0437b0f2b47f9101694

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 1cb976810ac1416a67562c2e5ba0accf6f928932320fef302e08100ed681b38e
MD5 256b77bc31683d691d2933a97ea072c3
BLAKE2b-256 6746c57266be9df8549c7d85deb4cb82280cb0019e46fff677534c5fa1badfa4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 af7b2661dcc032da1fae82069b5ebf2ac1dfcd5359ef8b35e1367bfc92181432
MD5 3dcae0b2cdca568676295a5c88473b48
BLAKE2b-256 332018bac334955fbe99d17229f4f8e98d05e4a501ac03a442be8facbb37c304

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3a36b4005770044bf08edecc798f0e41a75795b9e7c9c12fe29da8d792ef870c
MD5 73874ad78f98506eb5f193fd3458035b
BLAKE2b-256 5c4bd55587b192763db3163c3f508b3b67b31bb6f5e7a0e08b83013d0a59500a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 f7ada5d9dceafaab92646aa00c10a9efd9b09942dd9b0d7c5a4b73db92cc7e61
MD5 7763b619a6ec9f489dd223d66656c131
BLAKE2b-256 fe56a7e40c01575ac93360e606278d359f91829781a9f7fb6e5aa435039edbda

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 16b0f1c2e2d566c562d5c384c2b492646be0a19798532fdc1fdedacc66e3223f
MD5 05d14db1be04105140a321bff42ae1b6
BLAKE2b-256 d2bb40c589bbdce1be0c55e9f8159789d58d47a22014f2f820cf2b517a5cd193

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ebf1baebef1c4088ad5a5623decec6b52950f0e4d7a0ae4d48f0a99f8c9cb7d7
MD5 502e568f4b45f2280fd0f087b5353d33
BLAKE2b-256 25d05e3347aa0db0de382dddfa133a7b0ae72f24b4344f3989398980b44a3924

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 08f52122c352eb44c3421dab78b9b73a8a77a282cc8314ae576fcaa92b780d10
MD5 71f9770f17a1090ddb1a7790fd46a1f9
BLAKE2b-256 5d17184eed05543b724132e4a18149e900f5189001fcfe2d64edaae4fbaf36b4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a9639ab7540cfea45ef57d16dcbea2e22de351998d614c3ad2f9778fa3bdd788
MD5 9c573f96c78ba21800a3c411c606b7f5
BLAKE2b-256 44355681c2fec5e8b33454390af209c4353dfc44606bf06d714b0b8bd0454ffe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314t-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 1f5799ea1787aa6de6c150377d11afad39a38afd033f0c5247aecb997978c422
MD5 bae81d867ef45c451ae1a87695d78fc3
BLAKE2b-256 a6d02025268315e8b2b7b660039824cb7765a41623e97d4cd421510925400487

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 c70dfe58b0a00b36aa04cdb0f798bf3e0adc31747641f69e191109fd8572c9a9
MD5 1c427c495ff1e201d01139eef77344b3
BLAKE2b-256 8ed0d576e1dbd9885bfcd83d0e90762beea48d9373a6f7ed39170f44ed22e336

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 0967c5b86f274800a34a4ed862dfab56928144d03cb18821c5153f8777947796
MD5 2c7b5f06ce8b802e847efe89ff3cab2e
BLAKE2b-256 48f8ef7837ff858eb74079c4804c10b0403c0b740762e6eedba41062225f7117

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 63b81eef3656072e4ca87c58084c7a9c2b81d41a300b157be635a8a675aacfb8
MD5 dd02001478426b16fed4b26ced86be07
BLAKE2b-256 c9dd9c7728ff544fea09bbc8635e4c9e7c423b11c24f1a7a14e6ac4831466709

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 281d87fa790049c2b7c1b4253121edd80b392b19b5a3d28dc2a77579cb2a58ec
MD5 267948cdf8ba835d6973e3dc381155fe
BLAKE2b-256 124a7f7bb17c5a5a9747249807210e348450dab9212a46ae6d23ebce86ba6a2b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 185d2b18c062820b3a40d8fefa223a83f10b20a674bf6e8c4a432e8dfd844627
MD5 bfcae18b5c62cf835fc9c9bbc6fc3e48
BLAKE2b-256 4187374f3b2021b22aa6a4fc0b750d63f9721e53d1631a238f7a1c343c1cd288

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 5c259cb363299a0d90d63b5c0d7568ee98419861618a95ee9d91a41cb9954462
MD5 02fcbf0e866141376ee7066034a272a9
BLAKE2b-256 3aad07b76950fbbe65f88120ca2d8d845047c401450f607c99ed38862904671d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 956d89e0c92d471e8f7eee73f73fdff5ed345886378c45a43175a77538a1ffe4
MD5 e66b53f7e100cf09db00a7a5b3275025
BLAKE2b-256 eaf67dea79be2681a5574ab3fc237aa53b2c1dfd6bd2b44d4640b6c76f33f4c1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2b841698f93db3ccc36caa1900d2a3be281d9539b822dc012f08fc80b46a3224
MD5 22db018470885a147c804be08cd8eb46
BLAKE2b-256 5e4858a1f6623466522352a6efa153b9a3714fc559d9f930e9bc947b4a88a2c3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 b1249e9ff581c5b658c8f0437f883b01f1edcf424a16388591e7c05e5e9e8b0c
MD5 6a0db71fba598c8408458fbcdbd75c45
BLAKE2b-256 995d732fe747a1304805eb3853ce6337eea16b169f7105a0d0dd9c6a5ffa9948

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 182c452279365a93a9f45874f7f191ec1c51e1f1eb41bf2b16563f1a40c1da3a
MD5 d6e2563160a9a209145c68cf7f7621cc
BLAKE2b-256 d599aed1453687ab63819a443930770db972c5c8064421f0d9f5da9ad029f26b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2003cc82a579107e70d013482acce8ba773293f2db534fb532738395c557ff34
MD5 b63981e13d76b6861dd68a6c538286ef
BLAKE2b-256 ab9eea66132776700fc77a39b1056e7a5f1308032fead94507e208dc6716b7cd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2ee3663f2c334959016b56e3bd0dd187cbc73f948e3a3af14c3caaa0c3035d10
MD5 c1da886f70d93a48dfe5f22dd96b68b9
BLAKE2b-256 274143906867287cbb5ca4cee671c3cc8081e15deef86a8189c3aad9ac9f6b4d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a6ce7973384c37bdf0f371a843f95a6e6f4e1489e10e0cf57330198df72959c5
MD5 b322c47629a50662afe0fc5d6145b6ce
BLAKE2b-256 8e7debb7085b8fa31c24ce0355107cea2b92229d9050552a01c5d291c42aecea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp314-cp314-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 5b5cb5b6344c4c4c24b2dc87b0bfee78202b07ef7633385df70da7fcf6f7cec6
MD5 2e4038d2316f4daf079c863ce7df676f
BLAKE2b-256 73f60caf29fec943f201fbc8822879c99d31e59c1d51a983d9843ee5cf398539

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-win_arm64.whl
Algorithm Hash digest
SHA256 e9bf7f6699f490e4e43c44757aa179dab24d1960999c84ab5c3d5377714ed473
MD5 be399f788bb5878c42fb1fd363ba515c
BLAKE2b-256 817a5bd0672aa65d38c8da6747c17c8b441bdb53d816c569e3261013af8e83cf

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 ce81c5544a5453f61cb6f548ed358cfb111e3b23f3cd42d250a4077a6be2a7b6
MD5 3c7e532246d0fe4df6dbe8a3fc83678c
BLAKE2b-256 149f4dd6b7b612037158bb2c9bcaa710e6fb3c40ad54af441b9c53b3a137a9f1

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-win32.whl
Algorithm Hash digest
SHA256 a5b7a26b51a9df473ec16a1934d117443a775ceb7b39b78670b2e21893c330c9
MD5 ea5d1ffcaeb59548f45798b5a698b9dd
BLAKE2b-256 63be543d35c46bebf6f7bf2be538cca74d6585f25714700c36f37f01b92df551

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d614986dc68506be8f00474f4f6960e03e4ca9883f7df47744800e7d7c08a494
MD5 a4b368f4529ee7029a801ae3dd45e1b3
BLAKE2b-256 9af24a9e9338d67626e2071b643f828a482712ad15889d7268e11e9a63d6f7e9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 842d449a8fefe546f311656cf8c0d6729b08c09a185f1cad94c756210286d6a8
MD5 9d78e4deebb460b42899643a03a8d8ce
BLAKE2b-256 3dff58ba98409c1dbc8316cdb20dafbc63ed267380a07780cafecaf5012dabc9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 39a7e8083959cb1c4ff74e483eecb5a65d3b3e1d821b256e54baf61782c906c6
MD5 72811e1f1a8c599f6b3452b00878ef10
BLAKE2b-256 3bb489a591bcc08b5e436af43315284bd233ba77daf0cf20e098d7af12f006c1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b5d4ece8628d6e364302006366cea3ee887db397faebacc5dacf8ef19e064cf8
MD5 d465ff2f3e865f25cfb25caa671d1fec
BLAKE2b-256 c43911ebdc6d9927172a64ae237d16763145db6bd45ebb4055c17b88edab72a7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d36591ce06d047d0c0fe2fc5f14bfbd5b4525d08a7b6a279379085e13f0e3d0e
MD5 f0db0d9d13c1a005c182507971650e7f
BLAKE2b-256 f0d51984b6ee93281f360a119a5ca1af6a8ca7d8417861671388bf750becc29b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 b2eb48bd9848d66fd04826382f5e8491ae633de3233a3d64d58ceb4ecfa2113a
MD5 3157cfb1633eb2e9ec2812030467ae8f
BLAKE2b-256 b3a880eb1201bb49ae4dba68a1b284b4211ed9daa8e74dc600018a10a90399fb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 238e67264b4013e74136c49f883734f68656adf8257bfa13b515626b31b20f8e
MD5 4acf430016c31bcf76ada611be2e58e9
BLAKE2b-256 196378aef90141b7ce0be8a18e1782f764f6997ad09de0e05251f0d2503a914a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 fd8aba965604d70306eb90a35528f776e59112a7114a5162824d43b76fa27f58
MD5 447428fed03e646f2e1d6dcfc2650c1e
BLAKE2b-256 818e104ac14e2d3450c43db18ec03e1b96b445a94ae510b60138f00ce2cb7ca1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 99018c331fb2529084a0c9b4c713dfa49fafb47c7712422e49467c13a636c656
MD5 b13f3828faf699cdd5e2be2995dd2778
BLAKE2b-256 983b025240af4ada1dc0b5f10d73f3e5122d04ce7f8908ab8881e5d82b9d61b6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 c037aadf4d64bdc38af7db3dbd34877a057ce6524eefcb2914d6d41c56f968cc
MD5 b4e501797cfbe9c213d3fc4478a0a6ba
BLAKE2b-256 a48f207c2cec01e34e56db1eff606eef46644a60cf1739ecd474627db90ad90b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313t-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 7d6606524fa77b3912c9ef52a42ef63c6cfbfc1077e9dc6296cd5da0da286044
MD5 8d60cf55c9c4bcf8d93ecfc532b48ab8
BLAKE2b-256 3eb395b310605285573341fc062d1d30b19a54f857530e86c805f942c4ff7941

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 d9a4953575f300a7bab71afa4cd4ac061c7697c89590a2902b536783eeb49a4f
MD5 3b3298bb661763c0f855181ad21cbdc2
BLAKE2b-256 9cd4927eced0e2bd45c45839e556f987f8c8f8683268dd3c00ad327deb3b0172

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ea7a3c283ce0f06fe789365841e9174ba05f8db16e2fd6ae00a02df9572c04c0
MD5 6f253d179eba246fb7d2fe2a9d44b9f9
BLAKE2b-256 712d55184ed6be6473187868d2f2e6a0708195fc58270e62a22cbf26028f2570

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 37be9296598a30c6a20236248cb8b2c07ffd54d095b75d3a2a2ee5babdc51df1
MD5 6633f0e3c1fe29aad3885fd5a3c409fd
BLAKE2b-256 f97be8ce8eef42a15f2c3461f8b3e6e924bbc86e9605cb534a393aadc8d3aff8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4f13450328a6634348d47a88367e06b64c9d84980ef6a748f717b13f8ce64e87
MD5 9b22b9249781358f7c57bd5fce0c6d19
BLAKE2b-256 7914d05f617342f4b2b4a23561da500ca2beab062bfcc408d60680e77ecaf04d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 1e11d3e5887b8b096f96b4154dfb902f29c723a9556639586cd140e77e28b313
MD5 57f42f87c8d6cea2e264d4912da8c8c9
BLAKE2b-256 d80aed5faaa63fa8e3064ab670e08061fbf09e3a10235b19630cf0cbb9e48c0a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 98fd84c4e4ea185b3bb5bf065261ab45867d8875032f358a435647285c722673
MD5 e430e8ce68105ce600f0f7a1201ad58a
BLAKE2b-256 3dd88ee9858062936b0f99656dce390aa667c6e7fb0c357b1b9bf76fb5e2e708

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 89f8b9ea3830c79468e26b0e21c3585f69f105157c2154a36f6b7839f8afb351
MD5 f21b11ce5159dcf8ac855b3a854116b6
BLAKE2b-256 0d1ea40725bb76959eddf8abc42a967bed6f4851b39f5ac4f20e9794d7832aa5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7c9f2c68ac6cb3de94eea08a437a75eaa2bd33f9e97c84836ca0b610a5804368
MD5 81ce191ebbdfd8dfd8772198cb7f416e
BLAKE2b-256 a3ca639f8cd5b08797bca38fc5e7e07f76641a428cf8c7fca05894caf045aa32

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 b577601bfe1d33913fcd9276d7607bbac827c4798d9e14d04bf37d417a6c41cb
MD5 70e1d7f45c0cc96b775673f42008960c
BLAKE2b-256 a2b08f686dd97a51f3b37d0238cd00a6d0f9ccabe701f05b56de1918571d0d61

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 a0ec8bdd88d2e2659c3518087ee34b37e20bd169419ffead4240a7004e8ed03b
MD5 70ac16c7b1bb0e3733c40c2cde147a86
BLAKE2b-256 9010aab883e1fa7fe2feb15ac663026e70ca0ae1411efa0c7a4a0342d9545015

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 563824a08c7c03d96856d84b46fdb3bbb7cfbdf79da7ef68725cda2ce169c72a
MD5 047cd19ba9171147f2067af1817c8591
BLAKE2b-256 5fe7db610ff9f10c2921f9b6ac0c8d8be4681b28ddd40fc0549429366967e61f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b24b29402f264f70a3c81f45974323b41764ff7159655360543b7cabb73e7d2f
MD5 0d04f5906fab970ea7f2c0eba2640f49
BLAKE2b-256 b6c59d37fbe3a40ed8dda78c23e1263002497540c0d1522ed75482ef6c2000f0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 1a32d77aeaea58a13230100dd8797ac1a84c457f3af2fdf0d81ea689d5a9105b
MD5 8a6dc203dce5bf2c6ebbba710f689488
BLAKE2b-256 4c93181070cd1aa2fa541ff2d3afcf763ceecd4937b34c615fa92765020a6c90

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 b7690f95404a1293923a296981fd943cca12c31a41af9c21ba3edd06398fc193
MD5 87b059b422ee2fc5dd5cc5ed77d74610
BLAKE2b-256 28c6195a6217a43719d5a6a12cc192a22d12c40290cecfa577f00f4fb822f07d

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 f4b1b1991617055b46aff6f6db24888c1f05f4db9801349d23f09ed0714a9335
MD5 8d29c255e17c2c54658ffa3a51ef9966
BLAKE2b-256 f5a14ed147de7d2b60174f758412c87fa51ada15cd3296a0ff047f4280aaa7ca

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 436b4c4352fe0762e3bfa34a5567079baa2ef22aa9c37cf4d128979ccfcad842
MD5 c49dbe076c7863d10e5a0db31cbea5b8
BLAKE2b-256 d767c35e80969f6ded306ad70b0698863310bdf36aca57ad792f45ddc0e2271f

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 6040a86f95438a0114bba16e51dfe27f1bc004fd29fe725f54a586f6d522b079
MD5 41eef85dc84a8167944262386d852b7b
BLAKE2b-256 b63c2f8d199d0e84e78bcd6bdc2be9b62410624f6b796e2893d1837ae738b160

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 44383bc0c933388516c2692c9a7503e1f4a67e982f20b9a29d2fb70c6494f147
MD5 d662e0574ae773ec786b28d87c4e7cb4
BLAKE2b-256 f3b4b49b88b4fea2f14dc73e5b5842755e782fc2e52f74423d6f4adc130d5880

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp312-cp312-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 d10bcde58bbdf18146f3a69ec46dd03233b94a4a5632af97aa5378da3a47d288
MD5 edf6fd7d66809135b430b18a0d3c4db6
BLAKE2b-256 53259287fef5be97529ebd3ac79d256159cb709a07eb58d4be780d1ca3885da8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp312-cp312-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 7e24af51e907d7457cc4a72691ec458320b9ae67dc492f63209f01eecb09de32
MD5 3ea27f8e815c18c961e2f262c341d01b
BLAKE2b-256 2865ee882455e051131869957ee8597faea45188c9a98c0dad724cfb302d4580

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 bca7feecc72ee33579e9f6ddf8babbe473045717a0e7dbc347099530f96e8b9a
MD5 be4e379c2f3f4e1d3e83378c8d16ad9b
BLAKE2b-256 d4f73495151dd3ca79949599b6d069b72a61a2c5e24fc441dccc79dcaf708fe6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d97d73818c642c938db14c0668167f8d39520ca9d983604575ade3fda193afcc
MD5 dfd02959dd6c20a4204ba9e12f476dbc
BLAKE2b-256 99149a39b7c9e007968411bc3c843cc14cf15437510c0a9991f080cab654fd16

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 a32433fe3deb4b2d8eda88790d2808fed0dc097e84f5e683b4cd4f42edef6cca
MD5 e35d420be711d0fa11a72d8154488aa7
BLAKE2b-256 62192df67b526bf25756c7f447dde554fc10a220fd839cc642f50857d01e4a7b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 8668e5f067e31a47699ebb354f43aeb9c0ef136f915bd864243098524482ac43
MD5 2d93efc459b2d9fb461a489c1cc1c1f1
BLAKE2b-256 76704f903c608faf786627a8ee17c06e0067b5acade473678b69c8094b248705

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 78d76dd2957d62501084e7012ddafc5fcd406dd982b7a9ca1ea76e8eaaf73e7e
MD5 388fdc6e9937ef21c2504e13e34353a6
BLAKE2b-256 be95888f069c89e7729732a6d7cca37f76b44bfb53a1e35dda8a2c7b65c1b992

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ec13647907bb9d15fd192bbfe89ff06612e098a5709e7d6ecabbdd8f7908fc45
MD5 5d905dc37ec256e95ee31f333d1ea0d8
BLAKE2b-256 662138b71e6f2818f0f4b281c8fba8d9d57cfca7b032a648fa59696e0a54376a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 b83601f84fde939ae3478bb32a3aef36f61b58c3208d825c7e8ce1a735f143f2
MD5 a24eb8ea2fd369e029a7aedf9db9dc55
BLAKE2b-256 555c7dad43a9b6ea88bf77e0b8b7729a4c36978e1043165034212fd2702880c6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 7a44d9c00f7a0a02d3b777429281376370f3d13d2c75ae74eb94e11ebcf4a7fc
MD5 8e9a7d1b9038ca8796b72c4bc51f3422
BLAKE2b-256 f657eeb274d83ab189d02d778851b1ac478477522a92b52edfa6e2ae9ff84679

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 b103a752b6f1632ca420225718d6ed83f6a6ced3016dd0a4ab9a6825312de566
MD5 855c5128dc2003ef619ed78cafba4fd9
BLAKE2b-256 1d1bc019167b1f7a8ec77251457e3ff0339ed74ca8bce1ea13138dc98309c923

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 59bba9f7125536f23fdab5deeea08da0c287a64c1d3acc1c7e99515809824de8
MD5 f79fe0b795a11ce7d5713e97008d7b3d
BLAKE2b-256 9c1a18e9476ee1b63aaec3844d8e1cb21842dc19272c7e86d879bfc0dcc60db3

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 f76deef1f1019a17dad98f408b8f7afc4bd007cbe835ae77b737e8c7f19ae575
MD5 b57682b644dc8b1a5cf9dfe7b464cc56
BLAKE2b-256 38f970765e63f5ea7d43b2b6cd4ee9d3323f16267e530fb2a420d92d991cf0fc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 413bfea20a484c524858125e92b9ce6ffdd0a4b97d4ff96b5859aa119b0f1bdd
MD5 8a8c97644f78c4be0c37c136718f1ad9
BLAKE2b-256 a5cda1ae499cf9b87afb47a67316bbf1037a7c681ffe447c510ed98c0aa2c01c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp311-cp311-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 a8d7b7a0a3df9952f9965342159e0c1f05384c0f056a47ce8b61034f8cecbe83
MD5 6003d58fc45bce97dd797a595f1afb67
BLAKE2b-256 342d68eecc1bdaee020e8ba549502291c9450d90d8590d0552247c9b543ebf7b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp311-cp311-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 9b8c72a242683dcc72d37595c4f1278dfd7642b769e46700a8df11eab19dfd82
MD5 84cc274c34b8a3b964ab09de48b70437
BLAKE2b-256 132ac9efb4c6c535b0559c1fa8e431e0574d229707c9ca718600366fcfef6801

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b6f259118ba87b814a8ec475380aee5f5ae97a75852a3507cf31d055b01b5b40
MD5 94ec0e9f9899d287918e953d33d92102
BLAKE2b-256 4248b4efba0168a2b57f944205d823f8e8a3a1ae6211a34508f014ec2c712f4f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d80e8eb79009bdb0936658c44ca06e2fbbca67792013e3818eea3f5f228971c2
MD5 bc659a65ec03b3bde13edca04aaf1151
BLAKE2b-256 a4fb5ad6a8b92d3f88f3797b51bb4ef47499acc2d0b53d2fbe4487a892f37a73

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 5c084889ab2c59765a0d5ac602fd1c3c244f9b3fcc9a65fdc7ba6b74c5287490
MD5 6347bffe7bbb32cd4b7247ea5d292392
BLAKE2b-256 b081bf41405c772324926a9bd8a640dedaa42da0e929241834dfce0733070437

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 b52bf9282fdf401e4f4e721f0f61fc4b159b1307244517789702407dd74e38ca
MD5 29716d492b7aaad521a7e2f4d97034d8
BLAKE2b-256 d4fbb8fbe9aa16cf0c21f45ec5a6c74b4cecbf1a1c0deb7089d4a6f83a9c1caa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e248cc9446081119128ed002a3801f8031e0c219b5d3c64d3cc627da29ac0a33
MD5 a832826a49c5abee9cfa56e34c76fc97
BLAKE2b-256 148fc7b365dd9d9bc0a36e018cb96f2ffb60d2ba8deb589a712b437f67de2920

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4f375c61bfc3138b13e762fe0ae76e3bdca92497816936534a0177201666f44f
MD5 1d6e272c0bcb8c642a9f847b29a4111d
BLAKE2b-256 abd36272b1dd3ca1271661e168762b234ad3e00dbdf4ef0c7b9b72d2d159efa7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 912e9df4e89d383681268d38ad8f5780d7cccd94ba0e9aa09ca7ab7ab4f8e7eb
MD5 739d1c1ae6be1813fbae8eae5609a180
BLAKE2b-256 b908854fa4b3b20471d1df1c71e831b6a1aa480281e37791e52a2df9641ec5c6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 6c531155bf9179345e85032052a1e5fe1a696a6abf9cea54b97e8baefff970fd
MD5 980eb41fcb46d0fba197d3f4a8291980
BLAKE2b-256 82e574b7cd5cd76b4171f9793042045bb1726f7856dd56e582fc3e058a7a8a5e

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 b2b7f19a764d5e966d5a62bf2c28a8b4093cc864c6734510bdb4aeb840aec5e6
MD5 a1ff4f190da133da99c40ff47211092a
BLAKE2b-256 d3e563eb17c6b5deaefd93c2bbb1feae7c0a8d2157da25883a6ca2569cf7a663

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ec41a905908496ce4906dab20fb103c814558db1d69afc12c2f384549c17936a
MD5 5c2dec07e191f6bb946e6dd3ec5ade06
BLAKE2b-256 f7c7a25f56a718847e34d3f1608c72eadeb67653bff1a0411da023dd8f4c647b

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2025.10.23-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 7888475787cbfee4a7cd32998eeffe9a28129fa44ae0f691b96cb3939183ef41
MD5 03b5c35afc5f11b9599c3a3d422dbb21
BLAKE2b-256 b895074e2581760eafce7c816a352b7d3a322536e5b68c346d1a8bacd895545c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0ff1307f531a5d8cf5c20ea517254551ff0a8dc722193aab66c656c5a900ea68
MD5 1d1a5b466659b668bf5de397f171cf53
BLAKE2b-256 15ae45771140dd43c4d67c87b54d3728078ed6a96599d9fc7ba6825086236782

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp310-cp310-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 2e9117d1d35fc2addae6281019ecc70dc21c30014b0004f657558b91c6a8f1a7
MD5 091d216f8491e9e4bafb95f01cb0a217
BLAKE2b-256 807dc3ec1cae14e01fab00e38c41ed35f47a853359e95e9c023e9a4381bb122c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp310-cp310-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 883df76ee42d9ecb82b37ff8d01caea5895b3f49630a64d21111078bbf8ef64c
MD5 21785afcfe0a7b0ad90172aedcfa2042
BLAKE2b-256 7aeea54a6851f6905f33d3c4ed64e8737b1d85ed01b5724712530ddc0f9abdb1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 be19e7de499940cd72475fb8e46ab2ecb1cf5906bebdd18a89f9329afb1df82f
MD5 85179ae2af633b33accc89437cbedb34
BLAKE2b-256 d42370af22a016df11af4def27870eb175c2c7235b72d411ecf75a4b4a422cb6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 5f97236a67307b775f30a74ef722b64b38b7ab7ba3bb4a2508518a5de545459c
MD5 d6f0ad9f76f33e82ae595884a886c5bc
BLAKE2b-256 7cae0fa5cbf41ca92b6ec3370222fcb6c68b240d68ab10e803d086c03a19fd9e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3bfeff0b08f296ab28b4332a7e03ca31c437ee78b541ebc874bbf540e5932f8d
MD5 94dc13c581562db1e21e25db0d5062bf
BLAKE2b-256 2ddb3ddd8d01455f23cabad7499f4199de0df92f5e96d39633203ff9d0b592dc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 c5cdaf5b6d37c7da1967dbe729d819461aab6a98a072feef65bbcff0a6e60649
MD5 2593c075b9aaafc0e0b9b6c1562b9ef4
BLAKE2b-256 6705fa886461f97d45a6f4b209699cb994dc6d6212d6e219d29444dac5005775

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 7b426ae7952f3dc1e73a86056d520bd4e5f021397484a6835902fc5648bcacce
MD5 803c932b5d92468143be4ac3279b73c6
BLAKE2b-256 464776a8da004489f2700361754859e373b87a53d043de8c47f4d1583fd39d78

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 275cd1c2ed8c4a78ebfa489618d7aee762e8b4732da73573c3e38236ec5f65de
MD5 01cb9300586fe58eb69c90a4687f9a35
BLAKE2b-256 4e3d6a3a1e12c86354cd0b3cbf8c3dd6acbe853609ee3b39d47ecd3ce95caf84

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9c9bb421cbe7012c744a5a56cf4d6c80829c72edb1a2991677299c988d6339c8
MD5 1950e9448cfd09cb766f96a606f7966b
BLAKE2b-256 67cfa8615923f962f8fdc41a3a6093a48726955e8b1993f4614b26a41d249f9b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b4e10434279cc8567f99ca6e018e9025d14f2fded2a603380b6be2090f476426
MD5 56c17d65cf42d180b8f3c6287c9e502d
BLAKE2b-256 87125985386e7e3200a0d6a6417026d2c758d783a932428a5efc0a42ca1ddf74

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2025.10.23-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 17bbcde374bef1c5fad9b131f0e28a6a24856dd90368d8c0201e2b5a69533daa
MD5 87788bbe8ff1776a4d2dac894f67c3bd
BLAKE2b-256 8811849d5d23633a77047465eaae4cc0cbf24ded7aa496c02e8b9710e28b1687

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-win_arm64.whl.

File metadata

  • Download URL: regex-2025.10.23-cp39-cp39-win_arm64.whl
  • Upload date:
  • Size: 270.0 kB
  • Tags: CPython 3.9, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2025.10.23-cp39-cp39-win_arm64.whl
Algorithm Hash digest
SHA256 07a3fd25d9074923e4d7258b551ae35ab6bdfe01904b8f0d5341c7d8b20eb18d
MD5 2e6c8666f28f603dff8623cc4b4a4a3c
BLAKE2b-256 86e843773997a0de7cac2fdc76b7db7e5156326cd2f5eedf37447bee021d93b4

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: regex-2025.10.23-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 277.7 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2025.10.23-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 f668fe1fd3358c5423355a289a4a003e58005ce829d217b828f80bd605a90145
MD5 0ca4c759b43a7fdc15c231814739c540
BLAKE2b-256 b8cf6d2a18663fadd8a2bc35829497b8e94e7a0b876dff22c8ac2d0c650de8f5

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-win32.whl.

File metadata

  • Download URL: regex-2025.10.23-cp39-cp39-win32.whl
  • Upload date:
  • Size: 265.7 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for regex-2025.10.23-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 345c9df49a15bf6460534b104b336581bc5f35c286cac526416e7a63d389b09b
MD5 7ac6c836f7b0635bea06fd3f7e3fae2c
BLAKE2b-256 1bd88f98716394bcfe9c243f08bda4df481020c53777d1a342ab0a180484c741

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for regex-2025.10.23-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 33535dcf34f47821381e341f7b715cbd027deda4223af4d3932adcd371d3192a
MD5 9e0c6e284cda8f6d62972d9213d355a3
BLAKE2b-256 e272572c46603ae8cc3ad77bcaac45f395cdf4051d57406f9f6db2131c92f251

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for regex-2025.10.23-cp39-cp39-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 abbea548b1076eaf8635caf1071c9d86efdf0fa74abe71fca26c05a2d64cda80
MD5 85e09d8aa848e58e669b8484f015ffe7
BLAKE2b-256 cf7f1dd095103748636616919f5f507aab6ed3a3df0ded7f4607d6418c84b75e

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2025.10.23-cp39-cp39-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 92f565ff9beb9f51bc7cc8c578a7e92eb5c4576b69043a4c58cd05d73fda83c5
MD5 fca113711c585cffea0ed5b079b7befc
BLAKE2b-256 225c74f9caf0836707c3f4a4e19bbd9c6c93faa48cd658dfde54588d898e0cfb

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for regex-2025.10.23-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 bfdf4e9aa3e7b7d02fda97509b4ceeed34542361694ecc0a81db1688373ecfbd
MD5 840804bc7a50c3e06987ad3af4281d6e
BLAKE2b-256 ba6ad327cf755d3171855a8916f1770aefe7551248027688505a88490904dee1

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for regex-2025.10.23-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 ceabc62a0e879169cd1bf066063bd6991c3e41e437628936a2ce66e0e2071c32
MD5 f3cee63cfad37cc30d3144182971fce6
BLAKE2b-256 25871392f0cbc5b4592d37c947e051603caf5b6f006188c9959077231170e9b4

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for regex-2025.10.23-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 651c58aecbab7e97bdf8ec76298a28d2bf2b6238c099ec6bf32e6d41e2f9a9cb
MD5 03584bb644ea855614a31eeae0b78c88
BLAKE2b-256 444b9b0eade50d8100f363b87c549e73039d3f639a2ab0b035f48551b89caa74

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for regex-2025.10.23-cp39-cp39-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 0879dd3251a42d2e9b938e1e03b1e9f60de90b4d153015193f5077a376a18439
MD5 73eee6056fc43a5f0044bc1eeeb257cf
BLAKE2b-256 984310f900eac7745475021d627d43d73d458c0b0503e42877c9040f11001ae7

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for regex-2025.10.23-cp39-cp39-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 4663ff2fc367735ae7b90b4f0e05b25554446df4addafc76fdaacaaa0ba852b5
MD5 80142a0d60191a7537e8dfb06d52dedb
BLAKE2b-256 1d62ec306048d4da04fe4b620b26759df9fd4276f4d896de0560b4e49cec3f8a

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for regex-2025.10.23-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d7e481f9710e8e24228ce2c77b41db7662a3f68853395da86a292b49dadca2aa
MD5 c66d1fa8e70de1a50d06de25e77b6a5b
BLAKE2b-256 e720147df33bc304ec77e5c97f68a930ea97890f846a2d64b43402344002a00d

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for regex-2025.10.23-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ec506e8114fa12d21616deb44800f536d6bf2e1a69253dbf611f69af92395c99
MD5 26aad1a6c30c78c5c1cba02206034a08
BLAKE2b-256 a65e362fa14750a38efeb312f066f9ac941ae49960567331e48bf615ba11ad75

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for regex-2025.10.23-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9e72e3b84b170fec02193d32620a0a7060a22e52c46e45957dcd14742e0d28fb
MD5 ef6edb8418fa628c6893f2e511bd1767
BLAKE2b-256 ee772893ad1c98a9eebe13a7a622c77ade288c93280d5581c83265d10e473935

See more details on using hashes here.

File details

Details for the file regex-2025.10.23-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for regex-2025.10.23-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 d8d286760ee5b77fd21cf6b33cc45e0bffd1deeda59ca65b9be996f590a9828a
MD5 21c9827b257c5d272a8e821f34272e2e
BLAKE2b-256 ed16ebf3f7dec606a5b0f23a01317c7989037f152f407170f17030ee977d4211

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