14
A
回答
17
对于原子:
?- atom_concat ('my ', 'atom', X). X = 'my atom'.
对于字符串:
:- set_prolog_flag (double_quotes , chars). :- use_module (library(double_quotes)). ?- append ("my ", "string", X). X = "my string".
我花了一段时间才能找到合适的名字。也许它也会帮助别人。
2
这是一个简单的解决方案,不会过分复杂。
要追加原子,使用atom_concat/3断言:
A='my ',
B='atom',
atom_concat(A, B, FinalAtom).
要追加字符串,使用string_concat/3断言:
A="my ", % single quotes also work
B="string",
string_concat(A, B, FinalString)
两个链接到官方SWI页-Prolog文档网站。
相关问题
- 1. 如何连接两个_T字符串?
- 2. 如何连接两个字符串?
- 3. 连接两个字符串
- 4. 连接两个字符串
- 5. 连接两个字符串
- 6. 如何在perl中连接两个子字符串
- 7. 如何连接两个字符串与许多空字符?
- 8. shell脚本连接两个字符串
- 9. 麻烦连接两个字符串
- 10. 连接两个字符串错误
- 11. 连接两个字符串时出错?
- 12. 连接两个字符串(K&R)
- 13. 在tcl中连接两个字符串
- 14. 用连接字符串比较两个字符串数组VB.NET
- 15. 如何连接字符串?
- 16. 如何连接字符串
- 17. 2个字符串如何连接?
- 18. Java如何连接2个字符串?
- 19. 如何连接多个unicode字符串?
- 20. 如何找到两个字符串之间的子字符串?
- 21. 如何在C++中连接两个字符串?
- 22. 如何连接两个字符串与Jet.OLEDB.4.0提供程序
- 23. 如何连接iphone中的两个字符串
- 24. 如何从两个连接字符串中选择?
- 25. 如何连接两个字符串与C和MinGW?
- 26. 如何在MSQL中连接两个字符串与MS SQL
- 27. 如何连接两个字符串以构建完整路径
- 28. 如何连接SQL Server 2005中的两个字符串
- 29. 如何在erlang中连接两个utf8字符串?
- 30. 如何在C++中连接两个字符串* arr []
您应该使用'string_concat/3'而不是'append/3'作为字符串,正如@KaitlinHipkin的回答中所解释的。 – morxa
@morxa:当时我使用了sicstus prolog。所以downvote有点苛刻,因为prolog分布中没有这样的功能。 :-) –
答案表明这是所有Prolog实现的最佳方式,你从不会说它是为了sicstus。 Afaik,追加/ 3也不是ISO。将double_quotes设置为字符可能会破坏应用程序。即使你不想使用'string_concat/3',imho中'atom_string/2'和'atom_concat/3'的组合更好。 – morxa