В Python 2.7 и 3 выполняются следующие действия:
>>> re.search(r"a{1,9999}", 'aaa')
<_sre.SRE_Match object at 0x1f5d100>
но это дает ошибку:
>>> re.search(r"a{1,99999}", 'aaa')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/re.py", line 142, in search
return _compile(pattern, flags).search(string)
File "/usr/lib/python2.7/re.py", line 240, in _compile
p = sre_compile.compile(pattern, flags)
File "/usr/lib/python2.7/sre_compile.py", line 523, in compile
groupindex, indexgroup
RuntimeError: invalid SRE code
Кажется, что существует верхний предел количества разрешенных повторений. Является ли эта часть спецификации регулярного выражения или специфическим для Python ограничением? Если Python-specific, это фактическое число, зарегистрированное где-то, и отличается ли оно от реализаций?