鉴于这些文件夹名称:
locales/DE/en
locales/FR/en
locales/US/en
locales/US/fr
public
test
[...]
除了前两个模式之外,我想匹配所有内容。根目录中还有其他文件夹,locales
文件夹中还有其他子文件夹。我真的想要排除locales/*
除locales/US
这适用于locales
,但未包含其他根文件夹
/(locales)\/(US)/
有什么想法吗?
答案 0 :(得分:2)
答案 1 :(得分:1)
您可以使用两个正则表达式而不是将其混合在一起。以下是尝试:
my @folders =
qw (locales/DE/en locales/FR/en locales/US/en locales/US/fr public test);
foreach (@folders) {
if (/^locales/) {
next if ( $_ !~ /^locales\/US/ ); # skip everything except locales/US
}
print $_,"\n";
}