【发布时间】:2010-11-16 18:49:03
【问题描述】:
我喜欢 Perl 的其中一个功能是受 LISP 启发的 (?) 功能,可以使用简单的语法从事物列表中过滤出内容
@result_list = grep { test($_) } @unfiltered_list;
其中测试函数将应用于@unfiltered_list 的所有项目以生成@result_list。
这是其他语言中也存在的功能吗? (PHP?Python?)否则,我怎么能轻易地通过这些代码向非 Perlers(学生)暗示我的意思?
解决方案:filter 在大多数语言中,as seen on wikipedia。谢谢你的提示,伙计们。
【问题讨论】:
-
您有特定的语言吗?正如您所指出的,这在 Lisp 及其变体中可用。
-
在大多数高级语言中,如果它们支持
grep,则称为filter。grep缩短了两个字符,因此更加腐朽(而且更加独特):) -
Eric Strom:“大多数”意味着你知道几个;你能说说它们是什么吗?
-
@ysth:见en.wikipedia.org/wiki/…。
select这个名字也很常见。 -
@ether:我们的目标是向计算机科学专业的学生解释一些事情,这些学生有一些早期的 Java 经验,虽然我不能确定,但可能已经接触过 PHP/Python。我会避免“选择”参考,因为我的目的是提供对 ADA“选择”结构的解释:P
标签: perl language-features filtering porting metalanguage