当前位置:  开发笔记 > 编程语言 > 正文

如何根据文件扩展名过滤文件名?

如何解决《如何根据文件扩展名过滤文件名?》经验,为你挑选了1个好方法。

以下脚本存储阵列中的所有文件和目录@file_list.

我如何只筛选具有.lt6扩展名的文件,而不是其他文件?

opendir (CURRDIR, $localdir);
@file_list = grep !/^\.\.?$/, readdir CURRDIR;
print STDOUT "Found Files: @file_list\n";

干杯



1> Jim Counts..:

试试这个:

grep(/\.lt6$/i, readdir(CURRDIR))

我已经多次使用它了.虽然现在我更喜欢使用File :: Next来做这件事.

例:

use File::Next;

my $iter = File::Next::files( { file_filter => sub { /\.lt6$/ } }, $localdir )

while ( defined ( my $file = $iter->() ) ) {
    print $file, "\n";
}

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有