оно не "как в перле", оно со своими ограничениями. Например, бэктрекинга, лук-ahead/behind, нет, частичных матчей и т.п. За счёт этого кушается память, но и быстрей работает.
Бектрекинг делается без особых затрат, частичный матч есть, лук ахеад бехайнд можно сделать но тогда если встретится нарушится гарантия константности времени, т.к. это противоречит дка
Тока если вариантов много. Это парсер регэкспа специфическая штука, в ури роутере например вариантов каждом транзишене мало, он не будет в джами компилиться там во многих кейсах
Мы с тобой прекрасно понимаем, что процессор не обманешь. Либо ему придется выполнять лишние инструкции (т.е. время уже не одинаковое), либо программа будет кушать больше памяти и третьего не дано