Tim Peters <t...@python.org> added the comment: Sure! The OP was obviously asking about the engine that ships with Python, so that's what I talked about.
Raphaël, Matthew develops an excellent replacement ("regex") for Python's re module, which you can install via, e.g., "pip install regex" (or, on Windows, "python -m pip install regex"). More info here: https://pypi.python.org/pypi/regex/ Matthew, will that become Python's standard offering some day? I'd be in favor of that! It has many advantages, although it doesn't always avoid exponential-time backtracking in failing cases. For example, `re` and `regex` both take exponential time to fail to match the regexp: "((xy)+)+$" against strings of the form: "xy" * i + "y" Increase `i` by 1, and both take about twice as long to fail to match (meaning either .match or .search), and `re` is actually quicker on my box (3.6.3 on 64-bit Win10). In any case, I'm closing this, since there's no concrete idea on the table for a change to `re` that would actually help (e.g., people ignore warnings, and there's really no way to _guess_ whether a regexp is "taking too long" to begin with - if it's taking minutes, people immediately discover the hangup already when they interrupt the program and see that it's trying to match a regexp). ---------- resolution: -> wont fix stage: -> resolved status: open -> closed _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue31759> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com