Я пишу .NET-программу, которая выполняет много строк проверки текстовых файлов. Я хочу, чтобы пользователь мог устанавливать правила проверки, чтобы мне не приходилось жестко кодировать множество крайних случаев. Например, я представляю что-то вроде следующего (заглавные буквы - это элементы в раскрывающихся списках, ограничивающие пользовательские операции, а элементы в кавычках пишутся пользователем):
IF KEY IS "X" AND VALUE IS "Y" RETURN NOTIFICATION
(IF KEY IS "X" OR VALUE IS "Y") AND (IF SECTIONNAME IS "I") REPLACE "Y" WITH "J"
Итак, как вы можете видеть выше, я хочу иметь возможность группировать вещи с паренами, использовать логические И и ИЛИ и обрабатывать операторы IF, которые все приведут к некоторому значению True / False для выполнения какого-либо действия. Мой вопрос заключается в том, как лучше всего анализировать данные, чтобы я знал, какие операции нужно выполнять, и в правильных группировках. Через Google кажется, что, возможно, я хочу создать абстрактное синтаксическое дерево, если это так, я не смог найти несколько простых примеров, чтобы действительно начать меня.
Любая помощь очень ценится!