让我们说Expr = 1+2.
并且我想在括号中使用Expr
,我该怎么做以实现这种统一?
NewExpr = (1+2).
如何从旧版NewExpr
中删除Expr
?
(ps:如果你有兴趣 - 我正在做中缀转换的前缀)
答案 0 :(得分:1)
好吧,如果你操纵术语,问题是1 + 2
等同于(1 + 2)
。所以你猜我找不到一个好的解决方案。
但是,这不应该打扰你,因为如果你把Expr
放到一个更复杂的术语中,那么括号确实会相应地添加。
?- Expr = 1 + 2, ComplicatedExpr =.. [+, 1, Expr].
Expr = 1+2,
ComplicatedExpr = 1+ (1+2).
如果您不了解=../2
运算符,可以阅读更多相关信息here。