У меня есть удаленный «агент», который возвращает «да» или «нет» при передаче строки. Общение с этим агентом стоит дорого, поэтому я надеюсь найти библиотеку, которая позволит мне итеративно строить регулярные выражения с учетом положительных и отрицательных отзывов, при этом не забывая о его построении. Это позволило бы мне кэшировать ответы на отправляющей стороне.
Например, предположим, что мы запрашиваем агента «хорошо» и получаем «да». Исходное производное регулярное выражение должно быть «хорошим».
Предположим, я запрашиваю "goop" и получаю "yes". Я ожидаю, что производное регулярное выражение будет «goo [dp]», а не «good | goop».
И так далее.
Мне не нужно возвращаться назад или выполнять какие-либо необычные нелинейные операции с временем в моем производном регулярном выражении. Предположительно, сгенерированное регулярное выражение будет DFA под капотом. Кто-нибудь знает какие-либо библиотеки регулярных выражений c / c ++, способные сделать это? В качестве альтернативы, причины, почему это глупая идея и лучшие решения моей настоящей проблемы, также были бы полезны.