
想要解析类似(name=xxx AND age=xx) OR tel=xxxx 这样的表达式,java 中有这样的工具类去拆分 keyvalue 与 operator 么
场景主要是把逻辑表达式转换成 es 的查询语句,有点类似封装一层 kibana。
1 Cbdy 2020-02-01 16:06:19 +08:00 via Android 可以试试 EL ( Spring )表达式和 ONGL 表达式。或者直接用嵌入 JVM 的 JS/Python 引擎 |
3 zhuangzhuang1988 2020-02-01 16:31:59 +08:00 via Android antlr 啊,很多用的,工具齐全,设计优良,而且可以编译给很多语言用 |
4 speedofstephen 2020-02-01 16:45:04 +08:00 spring 自己有一个哦。 就是 Spring 内部解析 Spel 的那个。 关键字 SpringExpressionParser |
5 billlee 2020-02-01 17:15:58 +08:00 这个场景推荐 ANTLR 4 |
6 jimrok 2020-02-01 18:47:30 +08:00 ANTLR,去做吧 |
7 gowk 2020-02-01 19:06:37 +08:00 via Android GitHub 搜 easy-rule |
8 pythonee 2020-02-02 14:49:49 +08:00 可以自己手写下 parser |