Commit Graph

9 Commits

Author SHA1 Message Date
Fabrice Bellard
f1139494d1 regexp: removed alloca() is lre_exec() - added specific opcodes for \s and \S to have a smaller bytecode - optimized \b and \B 2025-12-22 15:12:46 +01:00
Fabrice Bellard
24379bf53c added regexp duplicate named groups - fixed reset of captures with quantizers 2025-12-03 13:30:33 +01:00
Fabrice Bellard
47aac8b2a8 regexp: cosmetic: make it clearer that there is now a set of registers instead of an auxiliary stack 2025-11-29 13:04:47 +01:00
Fabrice Bellard
371c06e359 regexp: ensure that the bytecode size grows linearly with respect to
the input regexp.

This way, pathological regexps such as
/(:?(:?(:?(:?(:?(:?(:?(:?(:?(:?(:?(:?(:?(?:a|)+|)+|)+|)+|)+|)+|)+|)+|)+|)+|)+|)+|)+|)+/ are no longer an issue. The generated bytecode is also simpler and
faster.
2025-11-29 12:39:52 +01:00
Fabrice Bellard
7ab23413b8 faster and simpler implementation of regexp backtracking 2025-11-22 10:44:19 +01:00
Fabrice Bellard
f95b8ba1bb added regexp modifiers 2025-05-16 20:34:18 +02:00
Charlie Gordon
37bd4ae62d Strip trailing spaces 2024-02-10 16:19:17 +01:00
Fabrice Bellard
10fc744ae4 regexp: fixed the zero advance logic in quantifiers (github issue #158) 2024-01-10 14:36:19 +01:00
bellard
91459fb672 2020-01-05 release 2020-09-06 18:53:08 +02:00