我一直在尝试使用phrase_from_file
语法规则解析包含整数行的文件
line --> I,line,{integer(I)}.
line --> ['\n'].
因此:phrase_from_file(line,'input.txt').
它失败了,我很快就迷路了,试图追踪它。我什至尝试过 print I
,但它甚至没有到达那里。
编辑:: 由于以下解决方案都没有真正适合我的需求(read/1
假设您正在阅读术语,有时写 DCG 可能需要太长时间),我蚕食了我在谷歌上搜索的这段代码,主要变化是添加:
read_rest(-1,[]):-!.
read_word(C,[],C) :- ( C=32 ;
C=(-1)
) , !.