我有一个包含多行条件字符串的文件,我需要读取该文件并将逻辑条件字符串转换为实际代码。有几个参数,条件的每一行检查一个或多个参数是否满足指定值或包含指定值。例如:
$parameterA = "value_1" AND ($parameterB CONTAIN "%value_2%" OR $parameterC = "value_3")
“=”、“AND”和“OR”具有“==”、“&&”和“||”的含义。“%”是通配符。
将其转换为代码后,它应该如下所示:
if (obj.parameterA == "value_1" && (obj.parameterB.contains("value_2") || obj.parameterC == "value_3"))
return true;
else return false;
其中“obj”是某个类的实例。
我在这里搜索了其他帖子,似乎ANTLR可能是一个不错的选择。但是,我没有这方面的经验,也不知道在 Java 中使用它有多难。在深入了解 ANTLR 的所有细节之前,我只想检查一下是否还有其他好的想法。非常感谢您的帮助!