Bräuchte Hilfe hab schon etliche versuche hinter mir :-(.
Ich will ein Perl Script schreiben das mp3 Dateien Ariviert.
So soll es funktionieren:
Beispiel die mp3
“public enemy - Stop Hey Whats That Sound.mp3”
Zuerst werden die ganzen mp3’s in einen in einen Array eingelesen
“@mp3liste”
Alles nach dem „-„ zeichnen Splitten( „public enenmy“).
Ok jetzt mein Problem
Aus den Artist soll ein Ordner erzeugt werden Problem ist das „public
enenmy“ nicht nur einmal sondern öfter vor kommt.
Wie kann ich per Regulären Ausdruck lösen das nur noch einmal der
Artist ausgegeben wird.
#!/usr/bin/perl
use strict;
my @mp3liste = glob '*.mp3';
my $mp3;
my @splitedmp3;
my @temp;
my $cach;
foreach $mp3(@mp3liste){
push @splitedmp3, split /-.*\z/,$mp3;
}
my $i = 0;
foreach $cach(@splitedmp3){
 if ($cach =~ s/(\w)\1//g){
      ++$i;
   print $cach,"\n";
 }
}
print "anzahl:",$i,"\n";
Ich will ein Perl Script schreiben das mp3 Dateien Ariviert.
So soll es funktionieren:
Beispiel die mp3
“public enemy - Stop Hey Whats That Sound.mp3”
Zuerst werden die ganzen mp3’s in einen in einen Array eingelesen
“@mp3liste”
Alles nach dem „-„ zeichnen Splitten( „public enenmy“).
Ok jetzt mein Problem
Aus den Artist soll ein Ordner erzeugt werden Problem ist das „public
enenmy“ nicht nur einmal sondern öfter vor kommt.
Wie kann ich per Regulären Ausdruck lösen das nur noch einmal der
Artist ausgegeben wird.
#!/usr/bin/perl
use strict;
my @mp3liste = glob '*.mp3';
my $mp3;
my @splitedmp3;
my @temp;
my $cach;
foreach $mp3(@mp3liste){
push @splitedmp3, split /-.*\z/,$mp3;
}
my $i = 0;
foreach $cach(@splitedmp3){
 if ($cach =~ s/(\w)\1//g){
      ++$i;
   print $cach,"\n";
 }
}
print "anzahl:",$i,"\n";