我正在尝试获取本地计算机上图像文件的名称,并且不应该重复。我已经在一个数组中获得了所有文件名,当我尝试进入数组并使用 Split() 时,我得到一些 888 作为输出。我正在寻找一个正则表达式,我可以在遇到“_”(下划线)之前打印所有内容。我需要获取名称,然后我可以使用 Uniq 删除重复项。欢迎任何建议。
我有以下代码:
#!/usr/bin/perl
use strict;
use warnings;
use File::Find;
use Data::Dumper;
use List::MoreUtils qw/ uniq /;
my $localdir = 'images/p/';
my @filefound;
find(
sub {push @filefound, $File::Find::name if /.jpg$/ },
$localdir
);
foreach (@filefound){
my @result = split('/images/p/',@filefound);
foreach (@result) { print "$_ \n";}
}