[英]grep multiple pattern in perl array at a time
以下是实际上在perl数组中找到模式的代码。
my $isAvailable = grep { $_->[0] eq '12345' } {$filteredTableEntriesMap{$REPORT_PART1}} ;
但是我想一次在两个索引中搜索两个模式
my $isWiuAvailable = grep { $_->[0] eq '12345' } @{$filteredTableEntriesMap{$REPORT_PART1}} ;
my $isBsAvailable = grep { $_->[1] eq '6789' } @{$filteredTableEntriesMap{$REPORT_PART1}} ;
这就是地图的表示方式
$VAR1 = {
'REPORT PART2' => [],
'REPORT PART1' => [
[
'12345',
'6789',
],
[
'343435',
'315',
],
[
'00103',
'000315',
],
]
我想匹配一个在索引1和索引2中具有这两个条目的数组
谢谢
您可以将两个条件组合为一个表达式。
my @found = grep { $_->[0] eq '12345' && $_->[1] eq '6789' }
@{$filteredTableEntriesMap{$REPORT_PART1}};
{}
用于grep
内容基本上是一个子例程。 如果您想将$_
保留在@found
结果中,则只要返回一个真值,就可以在其中执行@found
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.