Skip to main content

Alternative regular expression module, to replace re.

Project description

Introduction

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

Python 2

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

PyPy

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

Multithreading

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

Unicode

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

Flags

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

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

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

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

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

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

Old vs new behaviour

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

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

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

    • Indicated by the VERSION0 flag.

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

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

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

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

    • Only simple sets are supported.

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

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

    • Indicated by the VERSION1 flag.

    • Zero-width matches are handled correctly.

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

    • Nested sets and set operations are supported.

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

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

Case-insensitive matches in Unicode

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

Version 0 behaviour: the flag is off by default.

Version 1 behaviour: the flag is on by default.

Nested sets and set operations

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

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

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

  • Literal “–”

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

  • Literal “]”

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

  • Set which is:

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

  • but excluding:

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

Version 0 behaviour: only simple sets are supported.

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

Notes on named groups

All groups have a group number, starting from 1.

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

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

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

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

  • (\s+) is group 1.

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

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

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

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

Additional features

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

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

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

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

The test of a conditional pattern can be a lookaround.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Added \K (Hg issue 151)

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

It does not affect what groups return.

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

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

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

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

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

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

Fixed the handling of locale-sensitive regexes

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

Added partial matches (Hg issue 102)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Added capturesdict (Hg issue 86)

capturesdict is a combination of groupdict and captures:

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

captures returns a list of all the captures of a group

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

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

Added allcaptures and allspans (Git issue 474)

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

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

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

Allow duplicate names of groups (Hg issue 87)

Group names can be duplicated.

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

Added fullmatch (issue #16203)

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

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

Added subf and subfn

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

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

Added expandf to match object

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

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

Detach searched string

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

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

Recursive patterns (Hg issue 27)

Recursive and repeated patterns are supported.

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

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

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

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

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

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

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

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

Full Unicode case-folding is supported

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

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

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

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

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

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

The 3 types of error are:

  • Insertion, indicated by “i”

  • Deletion, indicated by “d”

  • Substitution, indicated by “s”

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

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

Examples:

  • foo match “foo” exactly

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

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

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

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

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

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

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

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

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

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

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

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

Examples:

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

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

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

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

Examples:

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

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

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

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

Further examples to note:

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

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

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

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

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

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

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

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

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

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

'anacondfuuoo bar'

it would’ve been an exact match.

However, there were insertions at positions 7 and 8:

'anaconda fuuoo bar'
        ^^

and deletions at positions 10 and 11:

'anaconda f~~oo bar'
           ^^

So the actual string was:

'anaconda foo bar'

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

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

One way is to build the pattern like this:

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

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

The new alternative is to use a named list:

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

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

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

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

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

Start and end of word

\m matches at the start of a word.

\M matches at the end of a word.

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

Unicode line separators

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

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

Set operators

Version 1 behaviour only

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

The operators, in order of increasing precedence, are:

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

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

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

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

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

Examples:

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

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

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

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

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

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

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

regex.escape (issue #2650)

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

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

regex.escape (Hg issue 249)

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

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

Repeated captures (issue #7132)

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

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

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

  • matchobject.starts([group])

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

  • matchobject.ends([group])

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

  • matchobject.spans([group])

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

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

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

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

Possessive quantifiers

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

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

Scoped flags (issue #433028)

(?flags-flags:...)

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

Definition of ‘word’ character (issue #1693050)

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

Variable-length lookbehind

A lookbehind can match a variable-length string.

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

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

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

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

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

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

Splititer

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

Subscripting match objects for groups

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

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

Named groups

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

Group references

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

Named characters \N{name}

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

Unicode codepoint properties, including scripts and blocks

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

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

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

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

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

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

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

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

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

A short form starting with In indicates a block property:

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

POSIX character classes

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

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

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

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

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

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

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

Search anchor \G

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

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

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

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

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

Reverse searching

Searches can also work backwards:

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

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

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

Matching a single grapheme \X

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

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

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

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

Note that there is only one group.

Default Unicode word boundary

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

Timeout

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

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

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

regex-2026.2.19.tar.gz (415.0 kB view details)

Uploaded Source

Built Distributions

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

regex-2026.2.19-cp314-cp314t-win_arm64.whl (274.9 kB view details)

Uploaded CPython 3.14tWindows ARM64

regex-2026.2.19-cp314-cp314t-win_amd64.whl (284.4 kB view details)

Uploaded CPython 3.14tWindows x86-64

regex-2026.2.19-cp314-cp314t-win32.whl (274.7 kB view details)

Uploaded CPython 3.14tWindows x86

regex-2026.2.19-cp314-cp314t-musllinux_1_2_x86_64.whl (799.9 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

regex-2026.2.19-cp314-cp314t-musllinux_1_2_s390x.whl (855.0 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ s390x

regex-2026.2.19-cp314-cp314t-musllinux_1_2_riscv64.whl (770.4 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ riscv64

regex-2026.2.19-cp314-cp314t-musllinux_1_2_ppc64le.whl (868.9 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ppc64le

regex-2026.2.19-cp314-cp314t-musllinux_1_2_aarch64.whl (795.9 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

regex-2026.2.19-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (781.6 kB view details)

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

regex-2026.2.19-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (813.1 kB view details)

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

regex-2026.2.19-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (915.5 kB view details)

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

regex-2026.2.19-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (873.7 kB view details)

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

regex-2026.2.19-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (807.9 kB view details)

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

regex-2026.2.19-cp314-cp314t-macosx_11_0_arm64.whl (291.2 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

regex-2026.2.19-cp314-cp314t-macosx_10_13_x86_64.whl (292.9 kB view details)

Uploaded CPython 3.14tmacOS 10.13+ x86-64

regex-2026.2.19-cp314-cp314t-macosx_10_13_universal2.whl (492.2 kB view details)

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

regex-2026.2.19-cp314-cp314-win_arm64.whl (273.6 kB view details)

Uploaded CPython 3.14Windows ARM64

regex-2026.2.19-cp314-cp314-win_amd64.whl (280.5 kB view details)

Uploaded CPython 3.14Windows x86-64

regex-2026.2.19-cp314-cp314-win32.whl (271.8 kB view details)

Uploaded CPython 3.14Windows x86

regex-2026.2.19-cp314-cp314-musllinux_1_2_x86_64.whl (789.9 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

regex-2026.2.19-cp314-cp314-musllinux_1_2_s390x.whl (850.1 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ s390x

regex-2026.2.19-cp314-cp314-musllinux_1_2_riscv64.whl (764.2 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ riscv64

regex-2026.2.19-cp314-cp314-musllinux_1_2_ppc64le.whl (859.7 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ppc64le

regex-2026.2.19-cp314-cp314-musllinux_1_2_aarch64.whl (788.2 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

regex-2026.2.19-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (775.9 kB view details)

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

regex-2026.2.19-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (803.5 kB view details)

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

regex-2026.2.19-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (911.9 kB view details)

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

regex-2026.2.19-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (865.2 kB view details)

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

regex-2026.2.19-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (799.1 kB view details)

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

regex-2026.2.19-cp314-cp314-macosx_11_0_arm64.whl (289.1 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

regex-2026.2.19-cp314-cp314-macosx_10_13_x86_64.whl (291.2 kB view details)

Uploaded CPython 3.14macOS 10.13+ x86-64

regex-2026.2.19-cp314-cp314-macosx_10_13_universal2.whl (489.3 kB view details)

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

regex-2026.2.19-cp313-cp313t-win_arm64.whl (271.6 kB view details)

Uploaded CPython 3.13tWindows ARM64

regex-2026.2.19-cp313-cp313t-win_amd64.whl (280.4 kB view details)

Uploaded CPython 3.13tWindows x86-64

regex-2026.2.19-cp313-cp313t-win32.whl (269.0 kB view details)

Uploaded CPython 3.13tWindows x86

regex-2026.2.19-cp313-cp313t-musllinux_1_2_x86_64.whl (799.6 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

regex-2026.2.19-cp313-cp313t-musllinux_1_2_s390x.whl (854.9 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ s390x

regex-2026.2.19-cp313-cp313t-musllinux_1_2_riscv64.whl (770.1 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ riscv64

regex-2026.2.19-cp313-cp313t-musllinux_1_2_ppc64le.whl (868.8 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ppc64le

regex-2026.2.19-cp313-cp313t-musllinux_1_2_aarch64.whl (795.6 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

regex-2026.2.19-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (781.3 kB view details)

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

regex-2026.2.19-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (812.9 kB view details)

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

regex-2026.2.19-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (915.2 kB view details)

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

regex-2026.2.19-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (873.6 kB view details)

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

regex-2026.2.19-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (807.7 kB view details)

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

regex-2026.2.19-cp313-cp313t-macosx_11_0_arm64.whl (291.2 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

regex-2026.2.19-cp313-cp313t-macosx_10_13_x86_64.whl (292.9 kB view details)

Uploaded CPython 3.13tmacOS 10.13+ x86-64

regex-2026.2.19-cp313-cp313t-macosx_10_13_universal2.whl (492.2 kB view details)

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

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

Uploaded CPython 3.13Windows ARM64

regex-2026.2.19-cp313-cp313-win_amd64.whl (277.3 kB view details)

Uploaded CPython 3.13Windows x86-64

regex-2026.2.19-cp313-cp313-win32.whl (266.4 kB view details)

Uploaded CPython 3.13Windows x86

regex-2026.2.19-cp313-cp313-musllinux_1_2_x86_64.whl (790.0 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.13musllinux: musl 1.2+ s390x

regex-2026.2.19-cp313-cp313-musllinux_1_2_riscv64.whl (764.2 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ riscv64

regex-2026.2.19-cp313-cp313-musllinux_1_2_ppc64le.whl (858.8 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ppc64le

regex-2026.2.19-cp313-cp313-musllinux_1_2_aarch64.whl (788.1 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

regex-2026.2.19-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (776.0 kB view details)

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

regex-2026.2.19-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (803.7 kB view details)

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

regex-2026.2.19-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (912.6 kB view details)

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

regex-2026.2.19-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (864.4 kB view details)

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

regex-2026.2.19-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (798.8 kB view details)

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

regex-2026.2.19-cp313-cp313-macosx_11_0_arm64.whl (289.0 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

regex-2026.2.19-cp313-cp313-macosx_10_13_x86_64.whl (291.3 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

regex-2026.2.19-cp313-cp313-macosx_10_13_universal2.whl (489.3 kB view details)

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

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

Uploaded CPython 3.12Windows ARM64

regex-2026.2.19-cp312-cp312-win_amd64.whl (277.3 kB view details)

Uploaded CPython 3.12Windows x86-64

regex-2026.2.19-cp312-cp312-win32.whl (266.4 kB view details)

Uploaded CPython 3.12Windows x86

regex-2026.2.19-cp312-cp312-musllinux_1_2_x86_64.whl (790.0 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

regex-2026.2.19-cp312-cp312-musllinux_1_2_s390x.whl (850.3 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ s390x

regex-2026.2.19-cp312-cp312-musllinux_1_2_riscv64.whl (764.2 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ riscv64

regex-2026.2.19-cp312-cp312-musllinux_1_2_ppc64le.whl (858.9 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ppc64le

regex-2026.2.19-cp312-cp312-musllinux_1_2_aarch64.whl (788.1 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

regex-2026.2.19-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (776.0 kB view details)

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

regex-2026.2.19-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (803.7 kB view details)

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

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

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

regex-2026.2.19-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (864.4 kB view details)

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

regex-2026.2.19-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (798.8 kB view details)

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

regex-2026.2.19-cp312-cp312-macosx_11_0_arm64.whl (289.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

regex-2026.2.19-cp312-cp312-macosx_10_13_x86_64.whl (291.4 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

regex-2026.2.19-cp312-cp312-macosx_10_13_universal2.whl (489.5 kB view details)

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

regex-2026.2.19-cp311-cp311-win_arm64.whl (270.5 kB view details)

Uploaded CPython 3.11Windows ARM64

regex-2026.2.19-cp311-cp311-win_amd64.whl (277.9 kB view details)

Uploaded CPython 3.11Windows x86-64

regex-2026.2.19-cp311-cp311-win32.whl (266.0 kB view details)

Uploaded CPython 3.11Windows x86

regex-2026.2.19-cp311-cp311-musllinux_1_2_x86_64.whl (789.1 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

regex-2026.2.19-cp311-cp311-musllinux_1_2_s390x.whl (846.2 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ s390x

regex-2026.2.19-cp311-cp311-musllinux_1_2_riscv64.whl (762.3 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ riscv64

regex-2026.2.19-cp311-cp311-musllinux_1_2_ppc64le.whl (854.9 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ppc64le

regex-2026.2.19-cp311-cp311-musllinux_1_2_aarch64.whl (783.2 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

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

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

regex-2026.2.19-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (800.6 kB view details)

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

regex-2026.2.19-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (907.4 kB view details)

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

regex-2026.2.19-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (860.7 kB view details)

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

regex-2026.2.19-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (793.8 kB view details)

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

regex-2026.2.19-cp311-cp311-macosx_11_0_arm64.whl (288.7 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

regex-2026.2.19-cp311-cp311-macosx_10_9_x86_64.whl (290.7 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

regex-2026.2.19-cp311-cp311-macosx_10_9_universal2.whl (488.4 kB view details)

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

regex-2026.2.19-cp310-cp310-win_arm64.whl (270.5 kB view details)

Uploaded CPython 3.10Windows ARM64

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

Uploaded CPython 3.10Windows x86-64

regex-2026.2.19-cp310-cp310-win32.whl (266.0 kB view details)

Uploaded CPython 3.10Windows x86

regex-2026.2.19-cp310-cp310-musllinux_1_2_x86_64.whl (780.1 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

regex-2026.2.19-cp310-cp310-musllinux_1_2_s390x.whl (835.8 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ s390x

regex-2026.2.19-cp310-cp310-musllinux_1_2_riscv64.whl (755.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ riscv64

regex-2026.2.19-cp310-cp310-musllinux_1_2_ppc64le.whl (846.0 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ppc64le

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

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

regex-2026.2.19-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl (768.1 kB view details)

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

regex-2026.2.19-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (783.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

regex-2026.2.19-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (791.9 kB view details)

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

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

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

regex-2026.2.19-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (850.9 kB view details)

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

regex-2026.2.19-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (781.8 kB view details)

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

regex-2026.2.19-cp310-cp310-macosx_11_0_arm64.whl (288.7 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

regex-2026.2.19-cp310-cp310-macosx_10_9_x86_64.whl (290.7 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

regex-2026.2.19-cp310-cp310-macosx_10_9_universal2.whl (488.4 kB view details)

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

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19.tar.gz
Algorithm Hash digest
SHA256 6fb8cb09b10e38f3ae17cc6dc04a1df77762bd0351b6ba9041438e7cc85ec310
MD5 808d30c052ef593b79414e302069c8f5
BLAKE2b-256 ffc0d8079d4f6342e4cec5c3e7d7415b5cd3e633d5f4124f7a4626908dbe84c7

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 a09ae430e94c049dc6957f6baa35ee3418a3a77f3c12b6e02883bd80a2b679b0
MD5 8d6213bce67509bdf19c3690ec867fab
BLAKE2b-256 3a45affdf2d851b42adf3d13fc5b3b059372e9bd299371fd84cf5723c45871fa

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 64128549b600987e0f335c2365879895f860a9161f283b14207c800a6ed623d3
MD5 3f28166b845149086783b84ed79426ec
BLAKE2b-256 ae427edc3344dcc87b698e9755f7f685d463852d481302539dae07135202d3ca

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 2905ff4a97fad42f2d0834d8b1ea3c2f856ec209837e458d71a061a7d05f9f01
MD5 e9c09c2ce0446f3219235bc9cbe0e1e1
BLAKE2b-256 43d935afda99bd92bf1a5831e55a4936d37ea4bed6e34c176a3c2238317faf4f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4071209fd4376ab5ceec72ad3507e9d3517c59e38a889079b98916477a871868
MD5 f34475bda1c53f098642c224ccc9bb3b
BLAKE2b-256 ff93393cd203ca0d1d368f05ce12d2c7e91a324bc93c240db2e6d5ada05835f4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 9e6693b8567a59459b5dda19104c4a4dbbd4a1c78833eacc758796f2cfef1854
MD5 9364efe85d9b4656dae5947163f2df89
BLAKE2b-256 496f94842bf294f432ff3836bfd91032e2ecabea6d284227f12d1f935318c9c4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 015088b8558502f1f0bccd58754835aa154a7a5b0bd9d4c9b7b96ff4ae9ba876
MD5 5b65bb88c37e6a6a62df528207b38951
BLAKE2b-256 9a67a1c01da76dbcfed690855a284c665cc0a370e7d02d1bd635cf9ff7dd74b8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 655f553a1fa3ab8a7fd570eca793408b8d26a80bfd89ed24d116baaf13a38969
MD5 0d830c310d8ea8e0ac9ca568db6bbb09
BLAKE2b-256 a0901e1d76cb0a2d0a4f38a039993e1c5cd971ae50435d751c5bae4f10e1c302

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6380f29ff212ec922b6efb56100c089251940e0526a0d05aa7c2d9b571ddf2fe
MD5 04c2f6247a272cc9af7bbe762f648c56
BLAKE2b-256 26f1af79231301297c9e962679efc04a31361b58dc62dec1fc0cb4b8dd95956a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 77cfd6b5e7c4e8bf7a39d243ea05882acf5e3c7002b0ef4756de6606893b0ecd
MD5 565876999b666a302ecaa582e2bbda70
BLAKE2b-256 29fbba221d2fc76a27b6b7d7a60f73a7a6a7bac21c6ba95616a08be2bcb434b0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 311fcccb76af31be4c588d5a17f8f1a059ae8f4b097192896ebffc95612f223a
MD5 3ef76c54a9915761de4e23e11667c402
BLAKE2b-256 b210550c84a1a1a7371867fe8be2bea7df55e797cbca4709974811410e195c5d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 d00c95a2b6bfeb3ea1cb68d1751b1dfce2b05adc2a72c488d77a780db06ab867
MD5 d0170e1966951a496996f338ce516c93
BLAKE2b-256 1a98126ba671d54f19080ec87cad228fb4f3cc387fff8c4a01cb4e93f4ff9d94

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 74ff212aa61532246bb3036b3dfea62233414b0154b8bc3676975da78383cac3
MD5 9972fe9a8f76082ce9ed895a3d455668
BLAKE2b-256 0cb6b898a8b983190cfa0276031c17beb73cfd1db07c03c8c37f606d80b655e2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 11c138febb40546ff9e026dbbc41dc9fb8b29e61013fa5848ccfe045f5b23b83
MD5 8249c4db68a90667e5c91ac5cdafc414
BLAKE2b-256 04e7be7818df8691dbe9508c381ea2cc4c1153e4fdb1c4b06388abeaa93bd712

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cce8027010d1ffa3eb89a0b19621cdc78ae548ea2b49fea1f7bfb3ea77064c2b
MD5 404c958412864c40e3faf48697b0ea60
BLAKE2b-256 98b09d81b3c2c5ddff428f8c506713737278979a2c476f6e3675a9c51da0c389

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 8457c1bc10ee9b29cdfd897ccda41dce6bde0e9abd514bcfef7bcd05e254d411
MD5 e92e95e3a6d81bbff87eb8627d561030
BLAKE2b-256 940a349b959e3da874e15eda853755567b4cde7e5309dbb1e07bfe910cfde452

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314t-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 5ec1d7c080832fdd4e150c6f5621fe674c70c63b3ae5a4454cebd7796263b175
MD5 5f93f4848b847aa423baf79f55dbc4de
BLAKE2b-256 490bf901cfeb4efd83e4f5c3e9f91a6de77e8e5ceb18555698aca3a27e215ed3

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 7187fdee1be0896c1499a991e9bf7c78e4b56b7863e7405d7bb687888ac10c4b
MD5 5d1b2b59db77fb38fd9d25351eb884d9
BLAKE2b-256 cdec2582b56b4e036d46bb9b5d74a18548439ffa16c11cf59076419174d80f48

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 e581f75d5c0b15669139ca1c2d3e23a65bb90e3c06ba9d9ea194c377c726a904
MD5 677f6307169a07ca3d665f4a02f3ed6b
BLAKE2b-256 f7f6639911530335773e7ec60bcaa519557b719586024c1d7eaad1daf87b646b

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 5390b130cce14a7d1db226a3896273b7b35be10af35e69f1cca843b6e5d2bb2d
MD5 0691decc2642f694c819bebf3c331449
BLAKE2b-256 847b7e2be6f00cea59d08761b027ad237002e90cac74b1607200ebaa2ba3d586

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9fff45852160960f29e184ec8a5be5ab4063cfd0b168d439d1fc4ac3744bf29e
MD5 ebfc67e73119063e83e362f44a880fb2
BLAKE2b-256 2527e3bfe6e97a99f7393665926be02fef772da7f8aa59e50bc3134e4262a032

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 ea8dfc99689240e61fb21b5fc2828f68b90abf7777d057b62d3166b7c1543c4c
MD5 9a0d023b3f30edad10685e808247830a
BLAKE2b-256 9eeabb947743c78a16df481fa0635c50aa1a439bb80b0e6dc24cd4e49c716679

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 2fedd459c791da24914ecc474feecd94cf7845efb262ac3134fe27cbd7eda799
MD5 e7f0e634308bd813b2ac919a790b454f
BLAKE2b-256 8e30136db9a09a7f222d6e48b806f3730e7af6499a8cad9c72ac0d49d52c746e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 c7e121a918bbee3f12ac300ce0a0d2f2c979cf208fb071ed8df5a6323281915c
MD5 23f02b2fb02760b2ae63cfeddbf23e2c
BLAKE2b-256 c88334a2dd601f9deb13c20545c674a55f4a05c90869ab73d985b74d639bac43

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2f914ae8c804c8a8a562fe216100bc156bfb51338c1f8d55fe32cf407774359a
MD5 a4375aeb184de69d4f2d64503f6372dc
BLAKE2b-256 924170e7d05faf6994c2ca7a9fcaa536da8f8e4031d45b0ec04b57040ede201f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 17648e1a88e72d88641b12635e70e6c71c5136ba14edba29bf8fc6834005a265
MD5 58cd42f5b9a6b597be2196aabaa669d8
BLAKE2b-256 bcd175a08e2269b007b9783f0f86aa64488e023141219cb5f14dc1e69cda56c6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ab780092b1424d13200aa5a62996e95f65ee3db8509be366437439cdc0af1a9f
MD5 a1313b2df11ba511d8777d5776b62e5f
BLAKE2b-256 9672ac42f6012179343d1c4bd0ffee8c948d841cb32ea188d37e96d80527fcc9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 50f1ee9488dd7a9fda850ec7c68cad7a32fa49fd19733f5403a3f92b451dcf73
MD5 82315b0f95a12e54f703136b3e387974
BLAKE2b-256 2a1375195161ec16936b35a365fa8c1dd2ab29fd910dd2587765062b174d8cfc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 6c8fb3b19652e425ff24169dad3ee07f99afa7996caa9dfbb3a9106cd726f49a
MD5 bdba96db5325d74a9bbd457293049ffc
BLAKE2b-256 a7002078bd8bcd37d58a756989adbfd9f1d0151b7ca4085a9c2a07e917fbac61

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 02b9e1b8a7ebe2807cd7bbdf662510c8e43053a23262b9f46ad4fc2dfc9d204e
MD5 ae15e8a4326844dfc7d869f362c976f2
BLAKE2b-256 28930651924c390c5740f5f896723f8ddd946a6c63083a7d8647231c343912ff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 997862c619994c4a356cb7c3592502cbd50c2ab98da5f61c5c871f10f22de7e5
MD5 cb42ffa3b2164f90ee7b7a3c8db78b80
BLAKE2b-256 ef08180d1826c3d7065200a5168c6b993a44947395c7bb6e04b2c2a219c34225

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 516ee067c6c721d0d0bfb80a2004edbd060fffd07e456d4e1669e38fe82f922e
MD5 998f656161233b7dd649283dfebb2c07
BLAKE2b-256 1495ee1736135733afbcf1846c58671046f99c4d5170102a150ebb3dd8d701d9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp314-cp314-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 03d191a9bcf94d31af56d2575210cb0d0c6a054dbcad2ea9e00aa4c42903b919
MD5 275802d78a43318cfd0e5d3879e5f577
BLAKE2b-256 2de27ad4e76a6dddefc0d64dbe12a4d3ca3947a19ddc501f864a5df2a8222ddd

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-win_arm64.whl
Algorithm Hash digest
SHA256 c0761d7ae8d65773e01515ebb0b304df1bf37a0a79546caad9cbe79a42c12af7
MD5 5a97dcd382892d5e49282f107435e976
BLAKE2b-256 1ab6a3f6ad89d780ffdeebb4d5e2e3e30bd2ef1f70f6a94d1760e03dd1e12c60

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 2c1693ca6f444d554aa246b592355b5cec030ace5a2729eae1b04ab6e853e768
MD5 b3c716df772d25e3345d427eafe16dec
BLAKE2b-256 1ea0ff24c6cb1273e42472706d277147fc38e1f9074a280fb6034b0fc9b69415

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-win32.whl
Algorithm Hash digest
SHA256 a178df8ec03011153fbcd2c70cb961bc98cbbd9694b28f706c318bee8927c3db
MD5 00bf3035d2d66de837de6583b1d3a7fb
BLAKE2b-256 cf54fcfc9287f20c5c9bd8db755aafe3e8cf4d99a6a3f1c7162ee182e0ca9374

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c227f2922153ee42bbeb355fd6d009f8c81d9d7bdd666e2276ce41f53ed9a743
MD5 0fdba3749f6f8a96ab056a3c1d55989e
BLAKE2b-256 59789ef4356bd4aed752775bd18071034979b85f035fec51f3a4f9dea497a254

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 d96162140bb819814428800934c7b71b7bffe81fb6da2d6abc1dcca31741eca3
MD5 2c3ceb1a1976f22976ba5f2390628def
BLAKE2b-256 8fe2784667767b55714ebb4e59bf106362327476b882c0b2f93c25e84cc99b1a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 4a02faea614e7fdd6ba8b3bec6c8e79529d356b100381cec76e638f45d12ca04
MD5 717f194e765910fa6548e9f9adb70276
BLAKE2b-256 ef53e2903b79a19ec8557fe7cd21cd093956ff2dbc2e0e33969e3adbe5b184dd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 654dc41a5ba9b8cc8432b3f1aa8906d8b45f3e9502442a07c2f27f6c63f85db5
MD5 fd3797fd196539b37b6f01cb5a9ac0d2
BLAKE2b-256 c509d039f081e44a8b0134d0bb2dd805b0ddf390b69d0b58297ae098847c572f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5a8f28dd32a4ce9c41758d43b5b9115c1c497b4b1f50c457602c1d571fa98ce1
MD5 d9b5a9a0820f69d9e79d0642019cbbda
BLAKE2b-256 c6d550f0bbe56a8199f60a7b6c714e06e54b76b33d31806a69d0703b23ce2a9e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 8abe671cf0f15c26b1ad389bf4043b068ce7d3b1c5d9313e12895f57d6738555
MD5 107559658dc1d015ee9c9a23788e2637
BLAKE2b-256 2dbe9eda82afa425370ffdb3fa9f3ea42450b9ae4da3ff0a4ec20466f69e371b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1e7a08622f7d51d7a068f7e4052a38739c412a3e74f55817073d2e2418149619
MD5 5cc457613ce99567b4b04452a9ea834e
BLAKE2b-256 907c981ea0694116793001496aaf9524e5c99e122ec3952d9e7f1878af3a6bf1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 8497421099b981f67c99eba4154cf0dfd8e47159431427a11cfb6487f7791d9e
MD5 be1b7a9a71186f54eab64364ea50f473
BLAKE2b-256 355ec90c6aa4d1317cc11839359479cfdd2662608f339e84e81ba751c8a4e461

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 5e3a31e94d10e52a896adaa3adf3621bd526ad2b45b8c2d23d1bbe74c7423007
MD5 a611ed3e42497f5e39c7516f4745a853
BLAKE2b-256 11566e3a4bf5e60d17326b7003d91bbde8938e439256dec211d835597a44972d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b5100acb20648d9efd3f4e7e91f51187f95f22a741dcd719548a6cf4e1b34b3f
MD5 c294e681f85085a73591e28fc5ea9df3
BLAKE2b-256 f2f7bda2695134f3e63eb5cccbbf608c2a12aab93d261ff4e2fe49b47fabc948

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d793c5b4d2b4c668524cd1651404cfc798d40694c759aec997e196fe9729ec60
MD5 c18ddd9518f8baff6dcaad1ccc62628f
BLAKE2b-256 700cfe89966dfae43da46f475362401f03e4d7dc3a3c955b54f632abc52669e0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 80caaa1ddcc942ec7be18427354f9d58a79cee82dea2a6b3d4fd83302e1240d7
MD5 8021bd363816f2d94fc20ec1d4dfdb2d
BLAKE2b-256 24b5b84fec8cbb5f92a7eed2b6b5353a6a9eed9670fee31817c2da9eb85dc797

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313t-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 93d881cab5afdc41a005dba1524a40947d6f7a525057aa64aaf16065cf62faa9
MD5 42f3a49cf835bab3ab0c7885f0605fb6
BLAKE2b-256 a9a2e0b4575b93bc84db3b1fab24183e008691cd2db5c0ef14ed52681fbd94dd

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 5e56c669535ac59cbf96ca1ece0ef26cb66809990cda4fa45e1e32c3b146599e
MD5 b02b2dd9d8ab05cbaa173aa1a0d95ac8
BLAKE2b-256 c2c2852b9600d53fb47e47080c203e2cdc0ac7e84e37032a57e0eaa37446033a

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 127ea69273485348a126ebbf3d6052604d3c7da284f797bba781f364c0947d47
MD5 75e4571737401af7bd1e1909101dfaff
BLAKE2b-256 3df239082e8739bfd553497689e74f9d5e5bb531d6f8936d0b94f43e18f219c0

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 43cdde87006271be6963896ed816733b10967baaf0e271d529c82e93da66675b
MD5 c5f220cd9c40d7de42775475cf6f443f
BLAKE2b-256 d63a40d3b66923dfc5aeba182f194f0ca35d09afe8c031a193e6ae46971a0a0e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 790dbf87b0361606cb0d79b393c3e8f4436a14ee56568a7463014565d97da02a
MD5 0ebdcea5056ccd752429cab1c89c7ab0
BLAKE2b-256 c345ef68d805294b01ec030cfd388724ba76a5a21a67f32af05b17924520cb0b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 c0924c64b082d4512b923ac016d6e1dcf647a3560b8a4c7e55cbbd13656cb4ed
MD5 fd0e7c4e0b37fe6742426952c0622791
BLAKE2b-256 eb375fe5a630d0d99ecf0c3570f8905dafbc160443a2d80181607770086c9812

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 294c0fb2e87c6bcc5f577c8f609210f5700b993151913352ed6c6af42f30f95f
MD5 eb770ff244fbc830ee7bf2403e7e432b
BLAKE2b-256 1eeb0bc2b01a6b0b264e1406e5ef11cae3f634c3bd1a6e61206fd3227ce8e89c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 b9ab8dec42afefa6314ea9b31b188259ffdd93f433d77cad454cd0b8d235ce1c
MD5 599a1fffd28b261e0a1fb47e525a4831
BLAKE2b-256 cb25d74f34676f22bec401eddf0e5e457296941e10cbb2a49a571ca7a2c16e5a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8e6e77cd92216eb489e21e5652a11b186afe9bdefca8a2db739fd6b205a9e0a4
MD5 06bf0c46f25bb2c4a9fc73cb948512a1
BLAKE2b-256 0532ae828b3b312c972cf228b634447de27237d593d61505e6ad84723f8eabba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 bcf57d30659996ee5c7937999874504c11b5a068edc9515e6a59221cc2744dd1
MD5 cfc1f765cf6afe2c4d83c72330671fe1
BLAKE2b-256 2fe561d80132690a1ef8dc48e0f44248036877aebf94235d43f63a20d1598888

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9cbc69eae834afbf634f7c902fc72ff3e993f1c699156dd1af1adab5d06b7fe7
MD5 9abf345eb0ea21e878a276e3a5047196
BLAKE2b-256 8bd9e5dbef95008d84e9af1dc0faabbc34a7fbc8daa05bc5807c5cf86c2bec49

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 8edda06079bd770f7f0cf7f3bba1a0b447b96b4a543c91fe0c142d034c166161
MD5 88a8d9564bbf6d257506b5954063f3c7
BLAKE2b-256 d597a3406460c504f7136f140d9461960c25f058b0240e4424d6fb73c7a067ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 46e69a4bf552e30e74a8aa73f473c87efcb7f6e8c8ece60d9fd7bf13d5c86f02
MD5 a054fd2605680c6f42136a62d15de2a8
BLAKE2b-256 c2beb1ce2d395e3fd2ce5f2fde2522f76cade4297cfe84cd61990ff48308749c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0d0e72703c60d68b18b27cde7cdb65ed2570ae29fb37231aa3076bfb6b1d1c13
MD5 d717d136eb340ce6ae94d9bd67d76180
BLAKE2b-256 75ec6438a9344d2869cf5265236a06af1ca6d885e5848b6561e10629bc8e5a11

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c13228fbecb03eadbfd8f521732c5fda09ef761af02e920a3148e18ad0e09968
MD5 e1f8fb84f1ad45c1893df2267fa49820
BLAKE2b-256 cd58714384efcc07ae6beba528a541f6e99188c5cc1bc0295337f4e8a868296d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 3aa0944f1dc6e92f91f3b306ba7f851e1009398c84bfd370633182ee4fc26a64
MD5 c979d8f854579a62f6407e8553716012
BLAKE2b-256 daaa78ff4666d3855490bae87845a5983485e765e1f970da20adffa2937b241d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 8df08decd339e8b3f6a2eb5c05c687fe9d963ae91f352bc57beb05f5b2ac6879
MD5 0f4e0d7d898cf71e462fc91de5bceb9a
BLAKE2b-256 d22da849835e76ac88fcf9e8784e642d3ea635d183c4112150ca91499d6703af

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 cdc0a80f679353bd68450d2a42996090c30b2e15ca90ded6156c31f1a3b63f3b
MD5 c2dc9eba1768be4796447406c8cbad9e
BLAKE2b-256 cc299ec48b679b1e87e7bc8517dff45351eab38f74fbbda1fbcf0e9e6d4e8174

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4146dc576ea99634ae9c15587d0c43273b4023a10702998edf0fa68ccb60237a
MD5 3b9dc34fde785438ff9370af0c98bbbd
BLAKE2b-256 fc4a6ff550b63e67603ee60e69dc6bd2d5694e85046a558f663b2434bdaeb285

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 5df947cabab4b643d4791af5e28aecf6bf62e6160e525651a12eba3d03755e6b
MD5 e6917c1a534aba4bc3190d7464f763cc
BLAKE2b-256 b622bc3b58ebddbfd6ca5633e71fd41829ee931963aad1ebeec55aad0c23044e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 38d88c6ed4a09ed61403dbdf515d969ccba34669af3961ceb7311ecd0cef504a
MD5 9574acb01eb03836f41677a6fcd3b248
BLAKE2b-256 f5b3c42fd5ed91639ce5a4225b9df909180fc95586db071f2bf7c68d2ccbfbe6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 965d59792f5037d9138da6fed50ba943162160443b43d4895b182551805aff9c
MD5 fcb5767c98258900f812f70ed0a2cbfb
BLAKE2b-256 cdef8ec58df26d52d04443b1dc56f9be4b409f43ed5ae6c0248a287f52311fc4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 6bc25d7e15f80c9dc7853cbb490b91c1ec7310808b09d56bd278fe03d776f4f6
MD5 9200091dbb26de8176e19c96d56a9358
BLAKE2b-256 8577ff1d25a0c56cd546e0455cbc93235beb33474899690e6a361fa6b52d265b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 9dadc10d1c2bbb1326e572a226d2ec56474ab8aab26fdb8cf19419b372c349a9
MD5 d2b7eb9a07282b5e5637d0ab6d4a758d
BLAKE2b-256 8c58e93e093921d13b9784b4f69896b6e2a9e09580a265c59d9eb95e87d288f2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0d9f81806abdca3234c3dd582b8a97492e93de3602c8772013cb4affa12d1668
MD5 a1696420bd4040aa302227a171c0c2eb
BLAKE2b-256 4d4bed776642533232b5599b7c1f9d817fe11faf597e8a92b7a44b841daaae76

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 d89f85a5ccc0cec125c24be75610d433d65295827ebaf0d884cbe56df82d4774
MD5 c659e2bd346a4651e9e88b86ce1f175a
BLAKE2b-256 dcc5624a0705e8473a26488ec1a3a4e0b8763ecfc682a185c302dfec71daea35

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 75472631eee7898e16a8a20998d15106cb31cfde21cdf96ab40b432a7082af06
MD5 787b00a91178933f99f121f05505b56f
BLAKE2b-256 593cea5a4687adaba5e125b9bd6190153d0037325a0ba3757cc1537cc2c8dd90

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 ccaaf9b907ea6b4223d5cbf5fa5dff5f33dc66f4907a25b967b8a81339a6e332
MD5 2ed606710ce0855e23f056886a474f2c
BLAKE2b-256 8a2eafea8d23a6db1f67f45e3a0da3057104ce32e154f57dd0c8997274d45fcd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 8dbff048c042beef60aa1848961384572c5afb9e8b290b0f1203a5c42cf5af65
MD5 fab6bb726c804941782b4e5720edb9d3
BLAKE2b-256 4a7e8e2d09103832891b2b735a2515abf377db21144c6dd5ede1fb03c619bf09

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 03d706fbe7dfec503c8c3cb76f9352b3e3b53b623672aa49f18a251a6c71b8e6
MD5 b2b4a2c98aa9ada5b3b0dd2ec00b985a
BLAKE2b-256 f3d0b7dd3883ed1cff8ee0c0c9462d828aaf12be63bf5dc55453cbf423523b13

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 db970bcce4d63b37b3f9eb8c893f0db980bbf1d404a1d8d2b17aa8189de92c53
MD5 7324901904e40a443b2a54e2f0c93c3c
BLAKE2b-256 f9873997fc72dc59233426ef2e18dfdd105bb123812fff740ee9cc348f1a3243

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d792b84709021945597e05656aac059526df4e0c9ef60a0eaebb306f8fafcaa8
MD5 c5f551a582f4fe5253dc6aab6c215590
BLAKE2b-256 1577fcc7bd9a67000d07fbcc11ed226077287a40d5c84544e62171d29d3ef59c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 c1665138776e4ac1aa75146669236f7a8a696433ec4e525abf092ca9189247cc
MD5 77f0e3709933bd4fdb0508775d38b953
BLAKE2b-256 b37313b39c7c9356f333e564ab4790b6cb0df125b8e64e8d6474e73da49b1955

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 ec661807ffc14c8d14bb0b8c1bb3d5906e476bc96f98b565b709d03962ee4dd4
MD5 1d3c8c2603d0a0c32e0fa0807fbb9e90
BLAKE2b-256 e31a042d8f04b28e318df92df69d8becb0f42221eb3dd4fe5e976522f4337c76

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 59a7a5216485a1896c5800e9feb8ff9213e11967b482633b6195d7da11450013
MD5 9b570761e32ea58aedca57cc44d91b8f
BLAKE2b-256 f929ba89eb8fae79705e07ad1bd69e568f776159d2a8093c9dbc5303ee618298

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 66e6a43225ff1064f8926adbafe0922b370d381c3330edaf9891cade52daa790
MD5 b8fa8d933fa4285032e8fb55b811be93
BLAKE2b-256 a84aeae4e88b1317fb2ff57794915e0099198f51e760f6280b320adfa0ad396d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 80d31c3f1fe7e4c6cd1831cd4478a0609903044dfcdc4660abfe6fb307add7f0
MD5 5bd8c8c240e4c594a6a1a3f05b214e1b
BLAKE2b-256 ac7c104779c5915cc4eb557a33590f8a3f68089269c64287dd769afd76c7ce61

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 dbb240c81cfed5d4a67cb86d7676d9f7ec9c3f186310bec37d8a1415210e111e
MD5 ae2f6577b3eeeb2e141cdab8100c548b
BLAKE2b-256 39cb237e9fa4f61469fd4f037164dbe8e675a376c88cf73aaaa0aedfd305601c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 0782bd983f19ac7594039c9277cd6f75c89598c1d72f417e4d30d874105eb0c7
MD5 04c20d19216d3892b6a116dfdf2e428f
BLAKE2b-256 eb2d0f113d477d9e91ec4545ec36c82e58be25038d06788229c91ad52da2b7f5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 e689fed279cbe797a6b570bd18ff535b284d057202692c73420cb93cca41aa32
MD5 00fb04a56595aefb41605a253f3d2165
BLAKE2b-256 2c5779a633ad90f2371b4ef9cd72ba3a69a1a67d0cfaab4fe6fa8586d46044ef

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0c10869d18abb759a3317c757746cc913d6324ce128b8bcec99350df10419f18
MD5 8e5aa70fa6b589da62c80cd863130640
BLAKE2b-256 95655aed06d8c54563d37fea496cf888be504879a3981a7c8e12c24b2c92c209

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 196553ba2a2f47904e5dc272d948a746352e2644005627467e055be19d73b39e
MD5 aaea94f134e299735e9058529cd99657
BLAKE2b-256 7605513eaa5b96fa579fd0b813e19ec047baaaf573d7374ff010fa139b384bf7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4584a3ee5f257b71e4b693cc9be3a5104249399f4116fe518c3f79b0c6fc7083
MD5 852ad64490fcfbd3989f6a346ee49067
BLAKE2b-256 b51b4590db9caa8db3d5a3fe31197c4e42c15aab3643b549ef6a454525fa3a61

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 31a5f561eb111d6aae14202e7043fb0b406d3c8dddbbb9e60851725c9b38ab1d
MD5 e61d39190cd7bfa053cf9d3ead69d8d4
BLAKE2b-256 9afdcc8c6f05868defd840be6e75919b1c3f462357969ac2c2a0958363b4dc23

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 fdbade8acba71bb45057c2b72f477f0b527c4895f9c83e6cfc30d4a006c21726
MD5 34aa7a79f03c94027c4c9e9fc780c35a
BLAKE2b-256 6732fdb8107504b3122a79bde6705ac1f9d495ed1fe35b87d7cfc1864471999a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 db5fd91eec71e7b08de10011a2223d0faa20448d4e1380b9daa179fa7bf58906
MD5 ded99e6be00c76a520b95799416dfdee
BLAKE2b-256 e23e6d7c24a2f423c03ad03e3fbddefa431057186ac1c4cb4fa98b03c7f39808

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eb20c11aa4c3793c9ad04c19a972078cdadb261b8429380364be28e867a843f2
MD5 fe85ea31df0e83f2a38b7cbc7b5ca3eb
BLAKE2b-256 fb19f735078448132c1c974974d30d5306337bc297fe6b6f126164bff72c1019

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 78af1e499cab704131f6f4e2f155b7f54ce396ca2acb6ef21a49507e4752e0be
MD5 b9b0113998001ee9c03248c778c91e9b
BLAKE2b-256 6646da0efce22cd8f5ae28eeb25ac69703f49edcad3331ac22440776f4ea0867

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 93b16a18cadb938f0f2306267161d57eb33081a861cee9ffcd71e60941eb5dfc
MD5 87dc3cc11ded215368a4e7b2db51eb36
BLAKE2b-256 6f9343f405a98f54cc59c786efb4fc0b644615ed2392fc89d57d30da11f35b5b

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 a032bc01a4bc73fc3cadba793fce28eb420da39338f47910c59ffcc11a5ba5ef
MD5 6058a7049c427b9b0f3cc69ba581a0cc
BLAKE2b-256 4c19b6715a187ffca4d2979af92a46ce922445ba41f910bf187ccd666a2d52ef

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 5b81ff4f9cad99f90c807a00c5882fbcda86d8b3edd94e709fb531fc52cb3d25
MD5 f10e1ab5e63f3c2d0368b03d5d5797c3
BLAKE2b-256 82af5b487e0287ef72545d7ae92edecdacbe3d44e531cac24fda7de5598ba8dd

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for regex-2026.2.19-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 3a039474986e7a314ace6efb9ce52f5da2bdb80ac4955358723d350ec85c32ad
MD5 846edf60dbe23efbf388e8a670e9d14a
BLAKE2b-256 5b8819cfb0c262d6f9d722edef29157125418bf90eb3508186bf79335afeedae

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 49cef7bb2a491f91a8869c7cdd90babf0a417047ab0bf923cd038ed2eab2ccb8
MD5 09dd9bebfd9013815cde3f00e27ac93b
BLAKE2b-256 16cd619224b90da09f167fe4497c350a0d0b30edc539ee9244bf93e604c073c3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 31aefac2506967b7dd69af2c58eca3cc8b086d4110b66d6ac6e9026f0ee5b697
MD5 af98a38caa8e46220c04268c91f04a78
BLAKE2b-256 d68df683d49b9663a5324b95a328e69d397f6dade7cb84154eec116bf79fe150

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 79014115e6fdf18fd9b32e291d58181bf42d4298642beaa13fd73e69810e4cb6
MD5 5fe7591e1e69f0fb241e1720521f45ee
BLAKE2b-256 51c86be4c854135d7c9f35d4deeafdaf124b039ecb4ffcaeb7ed0495ad2c97ca

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 12e86a01594031abf892686fcb309b041bf3de3d13d99eb7e2b02a8f3c687df1
MD5 f9491f37222d4817ef451bf61c859b32
BLAKE2b-256 375cf16fc23c56f60b6f4ff194604a6e53bb8aec7b6e8e4a23a482dee8d77235

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f9417fd853fcd00b7d55167e692966dd12d95ba1a88bf08a62002ccd85030790
MD5 387181599720ecb0583d256c44b2cfd2
BLAKE2b-256 729fab7ae9f5447559562f1a788bbc85c0e526528c5e6c20542d18e4afc86aad

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 f374366ed35673ea81b86a8859c457d4fae6ba092b71024857e9e237410c7404
MD5 ea5930a67eb54c9ef693145bf8c3bf2e
BLAKE2b-256 d48f045c643d2fa255a985e8f87d848e4be230b711a8935e4bdc58e60b8f7b84

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 2cb00aabd96b345d56a8c2bc328c8d6c4d29935061e05078bf1f02302e12abf5
MD5 fddb082c03994d5fcea4262de076ecf8
BLAKE2b-256 8bbdb046e065630fa25059d9c195b7b5308ea94da45eee65d40879772500f74c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 00ec994d7824bf01cd6c7d14c7a6a04d9aeaf7c42a2bc22d2359d715634d539b
MD5 d6da6b8fa18924b6c47be81a3d79367e
BLAKE2b-256 c2d238c53929a5931f7398e5e49f5a5a3079cb2aba30119b4350608364cfad8c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 e561dd47a85d2660d3d3af4e6cb2da825cf20f121e577147963f875b83d32786
MD5 a881a906e23a22afeb01161fbf87d43f
BLAKE2b-256 903a66471b6c4f7cac17e14bf5300e46661bba2b17ffb0871bd2759e837a6f82

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 4192464fe3e6cb0ef6751f7d3b16f886d8270d359ed1590dd555539d364f0ff7
MD5 df16512bdb0d6f385da74db09af50a22
BLAKE2b-256 37459608ab1b41f6740ff4076eabadde8e8b3f3400942b348ac41e8599ccc131

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 52136f5b71f095cb74b736cc3a1b578030dada2e361ef2f07ca582240b703946
MD5 37dc39da705048c403e4d07532453a37
BLAKE2b-256 08ff2c4cd530a878b1975398e76faef4285f11e7c9ccf1aaedfd528bfcc1f580

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 82336faeecac33297cd42857c3b36f12b91810e3fdd276befdd128f73a2b43fa
MD5 32f893ba3927f6c0775bdd693efa3e7c
BLAKE2b-256 767c805413bd0a88d04688c0725c222cfb811bd54a2f571004c24199a1ae55d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 676c4e6847a83a1d5732b4ed553881ad36f0a8133627bb695a89ecf3571499d3
MD5 fbcb800912fd90d69f6d01d54bc8a823
BLAKE2b-256 8b2fb4eaef1f0b4d0bf2a73eaf07c08f6c13422918a4180c9211ce0521746d0c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for regex-2026.2.19-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 f5a37a17d110f9d5357a43aa7e3507cb077bf3143d1c549a45c4649e90e40a70
MD5 b545a1b941889476bce1b52d0bd2b2c2
BLAKE2b-256 afdef10b4506acfd684de4e42b0aa56ccea1a778a18864da8f6d319a40591062

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