目标:
过滤掉列表中不以指定字符开头的所有单词。以指定字符开头的单词应该存储在一个没有第一个字符的新列表中。
问题:
如果允许列表中的所有单词,则它按预期工作。当不允许列表中的单词时,检查失败(如预期的那样)但它退出谓词而不尝试继续列表中的下一个单词(不是预期的),如回溯并尝试重做下一个单词。
filter_word([Char|Rest], Char, Rest).
filter([], _, []).
filter([Word|Words], Char, [H|T]) :-
filter_word(Word, Char, H),
filter(Words, Char, T).
这是一个家庭作业。