our $dir = `dir $movies\\*.avi /s`; our %inventory my @temp=$dir =~ /,\d{3} ((.*?)\.avi)/gi; for $temp (@temp) { if (($temp=~/(.+?)(\d{1,2}x\d{1,2})/i) or ($temp=~/(.*?)s\d{1,2}e\d{1,2})/i) ) { $inventory{$1}=$2; } }