在Rebol中如何获取对象路径名称(字符串)?

发布于 2024-08-14 17:04:33 字数 202 浏览 5 评论 0原文

假设我

list: [system/history system/prompt]

想转换为

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

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

谢谢。

Let's say I have

list: [system/history system/prompt]

I want to convert to

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

This may be an obvious answer but I can't see any :)

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

℉服软 2024-08-21 17:04:33

或者

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

Or

>> list: [system/history system/prompt]
>> map-each v list [form v]
== ["system/history" "system/prompt"]
独木成林 2024-08-21 17:04:33

在 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"]

There's many simple ways to do this in Rebol. It's interesting to use parse:

>> 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"]
青衫儰鉨ミ守葔 2024-08-21 17:04:33

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

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

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

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

Another way, that updates the existing list block:

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

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

probe list
== ["system/history" "system/prompt"]
缘字诀 2024-08-21 17:04:33

假设原始列表中从未有空格(如您的示例所示)

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

Assuming you never have spaces in the original list (as is true in your example)

parse form list none
== ["system/history" "system/prompt"]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文