0

我的系统中的一个示例事实可能是(trip 4 1330 650 boston chicago ... los_angeles)最后添加了任意数量的城市。我知道我可以使用多字段通配符 ( $?) 匹配任意长度,但是如何断言具有任意长度的事实?我想要做的是匹配上面表格中的一个事实,然后将另一个城市附加到它的末尾。是否有可能做到这一点?

4

1 回答 1

0

对的,这是可能的。您可以使用 匹配事实的 0 个或多个部分$?。要在 RHS 中使用它,您可以使用$?variable_name.

要将另一个城市附加到末尾,您可以将您的旅行事实与最后(trip ?arg1 ?arg2 ?arg3 $?cities)的城市相匹配并断言一个新的旅行事实:(trip ?arg1 ?arg2 ?arg3 $?cities new_city).

于 2010-12-10T04:13:32.407 回答