Предположим, что у меня есть 10 000 регулярных выражений и одна строка, и я хочу выяснить, соответствует ли строка любому из них и получить все совпадения. Тривиальный способ сделать это - просто запросить строку один за другим во всех регулярных выражениях. Есть ли более быстрый и эффективный способ сделать это?
EDIT: Я попытался заменить его на DFA (lex) Проблема здесь в том, что она даст вам только один образец. Если у меня есть строка "hello" и рисунки "[H | h] ello" и ". {0,20} ello", DFA будет соответствовать только одному из них, но я хочу, чтобы оба они ударялись.