Кто-нибудь встречал версию Java библиотеки регулярных выражений Google RE2 или библиотеку java с аналогичными возможностями и хорошей производительностью? Требование к производительности - линейное время по отношению к длине регулярного выражения и длины входного текста.
Большинство реализаций регулярных выражений используют алгоритм поиска с возвратом для сопоставления входного текста и, следовательно, являются экспоненциальными для некоторых простых регулярных выражений, таких как (. *). (. *). (. *). (. *)
. RE2 - это библиотека от Google, которая решает эту проблему с помощью алгоритма, который линейно зависит от размера ввода, используя концепции теории автоматов. Спрашивающий хочет знать, существуют ли библиотеки для Java, основанные на этом алгоритме.