如何知道原子是否以模式开始?

时间:2012-04-06 12:17:25

标签: string prolog

例如,如果我得到以下谓词:

father('jim', 'Boby')
father('rob', 'bob') 

我想知道谁有父亲的名字是以'bo'开头的?

2 个答案:

答案 0 :(得分:4)

只需使用{Prizo标准内置谓词atom_concat/3即可。

答案 1 :(得分:3)

另一个ISO选项是sub_atom/5

sub_atom(Atom, Before, Length, After, Sub_atom)

?- sub_atom(bob, 0, _, _, bo).
true.

atom_concat/3相比,这避免了生成不需要的原子来表示后缀。