在Rebol中如何获取对象路径名(String)?

时间:2009-12-12 11:20:51

标签: rebol

假设我有

list: [system/history system/prompt]

我想转换为

list-string: ["system/history" "system/prompt"]

这可能是一个明显的答案,但我看不到任何:)

感谢。

4 个答案:

答案 0 :(得分:2)

或者

>> list: [system/history system/prompt]
>> map-each v list [form v]
== ["system/history" "system/prompt"]

答案 1 :(得分:1)

在Rebol中有很多简单的方法可以做到这一点。使用解析很有意思:

>> list: [system/history system/prompt]
== [system/history system/prompt]
>> parse list [(list-string: copy []) some [set path path! (append list-string mold path)]]                                                                    
== true
>> list-string                                                                  
== ["system/history" "system/prompt"]

答案 2 :(得分:1)

另一种方法是更新现有的列表块:

list: [system/history system/prompt]
== [system/history system/prompt]

forall list [list/1: mold list/1]

probe list
== ["system/history" "system/prompt"]

答案 3 :(得分:1)

假设你原始列表中没有空格(在你的例子中是这样)

parse form list none
== ["system/history" "system/prompt"]