从Rebol

时间:2015-09-27 15:18:43

标签: types foreach word rebol

我真的觉得我错过了一些简单的事情,所以我提前道歉,甚至不得不问。在Rebol中,如何从块中的单词/变量中获取字符串值?我有这段代码:

REBOL []
aLink: "http://google.com"
anAtt: "href"
aList: [anAtt aLink]
print "Test 1"
foreach el aList [ print type? el ]
print "Test 2"
foreach el2 aList [ print el2]
print "Test 3"
foreach el2 aList [ print string! el2]

返回:

Test 1
word
word
Test 2
anAtt
aLink
Test 3
string
string

我在测试2中想要的是返回aLink和anAtt的值,但在每个组合中它都会返回单词名称。我究竟做错了什么?我使用2.3 libc二进制文件在32位Ubuntu上的REBOL / Core 2.7.8.4.2中执行此操作。

我之前在其他Rebol程序中使用过foreach和block,从来没有遇到过这个麻烦。救命啊!

1 个答案:

答案 0 :(得分:1)

  

在Rebol中,如何从块中的单词/变量中获取字符串值?

如果你有一个字!在一个值中,它被绑定(你在这里遇到的那些)然后你正在寻找得到

a-link: http://google.com
an-att: "href"
a-list: [an-att a-link]
foreach el a-list [ print get el ]

输出应为:

href
http://google.com

注意修改。 CamelCase类型的东西在Rebol中并不常见,对查找不区分大小写。此外,如果您没有从URL中删除引号!并使用URL!数据类型你错过了其中一个细节。 : - )

另请注意,PRINT将隐式地减少您提供的块。所以打印列表会为您提供:

href http://google.com