web-dev-qa-db-ja.com

2つのアトム/文字列を連結する方法は?

2つの原子を連結する方法を見つけようとしています。

A = 'my ', 
B = 'atom',

これらの2つのアトムをどのように連結すれば、結果は次のようになります。

'my atom'

19
Martin Vseticka

atomsの場合:

?- atom_concat ( 'my'、 'atom'、X)
 X = 'my atom'。

stringsの場合:

:- set_prolog_flagdouble_quotes 、chars)。
:- se_modulelibrary( double_quotes) )。
 
?- append ( "my"、 "string"、X)。
 X = "my string" 。

適切な名前を見つけるのにしばらく時間がかかりました。多分それは他の人にも役立つでしょう。

21
Martin Vseticka

以下は、複雑すぎないシンプルなソリューションです。

atomsを追加するには、 atom_concat/ 述語を使用します。

A='my ', 
B='atom', 
atom_concat(A, B, FinalAtom).

stringsを追加するには、 string_concat/ 述語を使用します。

A="my ",     % single quotes also work
B="string", 
string_concat(A, B, FinalString)

どちらのリンクも、SWI-Prologの公式ドキュメントWebサイトのページに移動します。

6
Kaitlin Hipkin