This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author serhiy.storchaka
Recipients ezio.melotti, mrabarnett, ramzitra, serhiy.storchaka
Date 2021-12-13.15:06:09
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1639407969.23.0.0763851017917.issue46065@roundup.psfhosted.org>
In-reply-to
Content
It ends, but it tooks several minutes to complete.

It is a limitation of the regular expression implementation in Python. Your input contains a sequence of 588431 characters which match the pattern [a-zA-Z0-9_.+-] not following by '@'. The engine finds the first character in this sequence, then scans 588431 characters matching this pattern, but does not find '@' after them. So it backtracks, steps back by one character and tries to match '@', fails, and continue stepping back until returns to the initial character. 588431 steps forward and 588431 steps back are needed to find that no matches starting at this position. So it steps forward and try the proce3dure from a new position. No it does 588430 steps in both direction. Totally it needs to do 588431+588430+588429+...+1 ~ 588431**2/2 ~ 173e9 steps. It takes a long time.
History
Date User Action Args
2021-12-13 15:06:09serhiy.storchakasetrecipients: + serhiy.storchaka, ezio.melotti, mrabarnett, ramzitra
2021-12-13 15:06:09serhiy.storchakasetmessageid: <1639407969.23.0.0763851017917.issue46065@roundup.psfhosted.org>
2021-12-13 15:06:09serhiy.storchakalinkissue46065 messages
2021-12-13 15:06:09serhiy.storchakacreate