在Perl中获取grep以过滤目录列表

时间:2015-10-28 03:59:20

标签: arrays perl filter grep

我无法通过Perl grep命令过滤目录列表。我花了一段时间搜索并尝试新的东西,但无法让它运行。

以下是代码:

$findcikstr = "!/" . $cik . "-10-K-" . $cikyear . "........./"; #(!/1534155-10-K-2013........../)
 @array = grep($findcikstr, <*>);

我无法过滤任何结果。

我正在寻找的模式是针对特定的CIK(7位数字),以及查找表单所有文件的年份

#######-10-K-YYYY*.txt

CIK是#######,年份是YYYY。完整的文件名是

1534155-10-K-2013-10-29.txt

1 个答案:

答案 0 :(得分:3)

您的表达式是一个真正的字符串,它总是计算为true,这意味着您将返回所有传入的列表元素。

my @filtered = grep { /^$cik-10-K-$cikyear/ } <*>;