Parsing 解析数学表达式时,此方法的分类是什么?

Parsing 解析数学表达式时,此方法的分类是什么?,parsing,math,expression,Parsing,Math,Expression,我已经为3-5*6*8这样的表达式编写了一个lexer和解析器,它被编译成以下标记: 3号 接线员- 5号 接线员* 6号 接线员* 8号 然后解析器采用了一种方法,我觉得这种方法是递归下降和优先级反向爬升的组合。其工作原理大致如下: parse(3-5*6*8) add(parse(3), -parse(5*6*8)) add(3, -product(parse(5), parse(6), parse(8)) add(3, -product(5, 6, 8)) 像这样,令牌序列从最低优先级递

我已经为3-5*6*8这样的表达式编写了一个lexer和解析器,它被编译成以下标记:

3号 接线员- 5号 接线员* 6号 接线员* 8号 然后解析器采用了一种方法,我觉得这种方法是递归下降和优先级反向爬升的组合。其工作原理大致如下:

parse(3-5*6*8)
add(parse(3), -parse(5*6*8))
add(3, -product(parse(5), parse(6), parse(8))
add(3, -product(5, 6, 8))
像这样,令牌序列从最低优先级递归地解析到最高优先级。它还通过括号处理系统处理函数,但这超出了本问题的范围

这种方法可以归类为任何已知的运算符优先解析器方法吗?或者这种方法是一种新的奇怪的东西吗


我可以想象,防止我的方法容易被分类的一件事是用于和和和积等运算符的多操作数系统,但这是我的特定应用程序所需要的,以简化实现。

这听起来有点像Dijkstra的分流算法

可能吗?