相关疑难解决方法(0)

使用条件项生成列表

是否可以使用条件项创建数组?

my @a = (1, ($condition) ? 2 : "no-op", 3);
Run Code Online (Sandbox Code Playgroud)

这样"no-op"的功能是这样的,如果$condition是假的,那么我得到列表,(1, 3)但如果$condition是真的,我得到了(1, 2, 3)


背景:

use strict;
use warnings;
use File::Find::Rule;

my $rule = File::Find::Rule->new();
$rule->or(
    $rule->new->name('*.cfg')->prune->discard,
    $rule->directory->name("_private.d")->prune->discard,
    $rule->new->name('*.t')->prune->discard,
    $rule->new->name('*.bak')->prune->discard,
    $rule->new->name('.*.bak')->prune->discard,
    $rule->new->name('.#*')->prune->discard,
);

my @files = $rule->in(".");
Run Code Online (Sandbox Code Playgroud)

在某些情况下,我想包括该行

$rule->directory->name("_private.d")->prune->discard
Run Code Online (Sandbox Code Playgroud)

在其他情况下,我不想排除目录_private.d..

perl

2
推荐指数
1
解决办法
67
查看次数

标签 统计

perl ×1