prolog从复合词中获取术语

prolog从复合词中获取术语,prolog,Prolog,我得到这个复合词: e(currentNode,"http://localhost:9000/") 如何仅获取http://localhost:9000/是否与该化合物分开? 或者更少,是否有方法将复合词转换为字符串或列表?通常,您使用统一: e(currentNode,"http://localhost:9000/") = e(_,X). 将绑定”http://localhost:9000/“到X 当您通过在查询中用变量代替术语隐式执行此操作时,也可以使用统一,例如: ?- comp(e(

我得到这个复合词:

e(currentNode,"http://localhost:9000/")
如何仅获取
http://localhost:9000/
是否与该化合物分开?
或者更少,是否有方法将复合词转换为字符串或列表?

通常,您使用统一:

e(currentNode,"http://localhost:9000/") = e(_,X).
将绑定
”http://localhost:9000/“
X

当您通过在查询中用变量代替术语隐式执行此操作时,也可以使用统一,例如:

?- comp(e(_,X)).

将为每个匹配结果绑定到
X
e
的第二个参数。

它起作用了,我尝试了:comp(e(ux)):-write(X)。谢谢你:)