Hi! Das Programm soll mehrere Dateien aus einem Verzeichnis einlesen und diese dann einzeln, Zeile für Zeile bearbeiten/durchsuchen und die Zeilen, auf die der reguläre Ausdruck zutrifft, anschließend in ein .txt schreiben. Jedoch kommt immer nur, dass kein Verzeichnis bei Line 7 gefunden wird, wenn ich das Programm ausführen möchte.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
my $Verzeichnis = 'Sequenzen/';
my $out_dir='Paarungen/';
opendir(DIR, $Verzeichnis) || die "$Verzeichnis: $!";
my @Dateien = readdir(DIR);
foreach(@Dateien)
{
if($_ =~ /\.txt$/)
{
open(my $fh,"$_") or die $!;
$line = $_;
chomp ($line);
if ( ($line =~ /^([A-Z]+ (\W){1} [A-Z]+)/g))
{
$line =~ s/\s+//g;
$line =~ s/\+//g;
if ( ($line =~ /(Line1andLine2)/g))
{
print $1 . "\n";
my $outpath="$out_dir/h.txt";
if(open(my $fh, '>>', $outpath))
{
printf $fh ("$line .\n");
}
else
{
warn("Error open $outpath ($!)");
}
close $fh;
}
}
}
}