【发布时间】:2009-11-06 08:22:39
【问题描述】:
我只是想缩短将 HTML::Element->as_trimmed_text 从 HTML::Elements 数组分配给一些变量的代码行 - 非常标准的东西,例如:
my ($var1, var2) = ($columns[1]->as_trimmed_text, $columns[2]->as_trimmed_text);
..除了还有几列,所以它继续多几行。我有一个好主意,我可以使用 map 代替,但我真的没有太多运气。我已经尝试过
map { $_->as_trimmed_text } @columns[1, 3, 5, 7, 9]
但我不断收到无法在没有包或对象引用的情况下调用方法“as_trimmed_text”。
是否可以做我正在尝试的事情,还是应该坚持我目前拥有的?
TIA
编辑:列 -> 列
【问题讨论】:
-
目前看起来您正在使用不同的变量:
@column在第一个示例中,@columns在第二个示例中。但是map使用的思路还可以 -
这行得通吗?
map { $columns[$_]->as_trimmed_text } 1, 3, 5, 7, 9 -
您可能需要围绕您正在做的事情添加更多代码;这对我来说是正确的。
-
假设您没有遇到
column-v-columns打字问题,请向我们展示您的代码的实际有效行,以及您尝试用它替换的内容不起作用。 -
实际上,从头开始:我已经复制了您的问题。诡异的。看得更远。