我真的觉得我错过了一些简单的事情,所以我提前道歉,甚至不得不问。在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,从来没有遇到过这个麻烦。救命啊!
答案 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