我有这段代码:
main:-
load_structure('ethernet.html',Element,[dialect(sgml),shorttag(false)]),
xpath(Element, //title, TITLE).
结果是:
TITLE=element(title,[],[This is my lan]).
我只会得到“这是我的局域网”。我能怎么做? 我已阅读library(xpath)但我找不到解决方案。
答案 0 :(得分:1)
Element保存整页结构。你在搜索什么?
例如,迭代所有段落并显示缩进
...
forall(xpath(Element, //p, Para), xml_show("", _, Para))
...
其中xml_show是我前段时间写的一个帮手,试图检查一些现实世界的数据。
%% xml_show(+Depth, +ElShow, +E)
%
% display xml tree indented
%
xml_show(Depth, ElShow, E) :-
format('~s~@~n', [Depth, (ground(ElShow) -> call(ElShow, E) ; xml_elshow(E) )]),
( E = element(_, _, Xs)
-> !, maplist(xml_show([0' |Depth], ElShow), Xs)
; true
).
:- meta_predicate xml_show(+, 1, +).
xml_elshow(E) :-
E = element(D, A, _)
-> write(D:A)
; write(E).