我需要解析和评估用户定义的表达式。
表达式的形式为“foo > 50 && bar < 60 && !(moo > 50))”
在解析过程中,需要监控 foo > 50、bar < 60 和 !(moo > 50) 的值,并在满足条件时生成事件。事件评估器将调用表达式评估。
我查看了 MVEL 和 JEXL,但无法确定如何在解析阶段获取挂钩。
除了使用 javacc 或 lex/yacc 引导语法之外,还有其他选择吗?
我是编译器/解析器世界的新手(除了 20 年前研究生院的课程),如果我在这里完全偏离轨道,请告知。
谢谢,-kvh