Ich habe zwei Dateien, File1 und File2.
File1 ist immer nach folgendem Muster aufgebaut:
0x0001 Fehlerbeschreibung
Die HEX Adresse muss jedoch nicht linear inkrementiert werden, sondern kann Sprünge aufweisen.File2 ist ähnlich aufgebaut:
0x0001 E400 Fehlerbeschreibung 1, Fehlerbeschreibung 2
Ich lese nun mittels Regex den Fehlercode der aktuellen Zeile aus File1 aus:
$FehlerTextFileZeile =~ /^0x[a-fA-F0-9]{4}/;
$HexCode = $&;
Bitte verwende $1.. mit capturing Klammern.
Ferner möchtest du eventuell deine Files in zwei Hashes lesen, indem du deine Zeilen so parst:
my $hexpat = qr/0x[A-Za-z0-9]{4}/;
my %file1;
while(<$fh>){
/^($hexpat)\s(.*)/ and $file1{$1} = $2;
}
Sodann kannst du Hashes vergleichen.
mfg Beat
--
><o(((°> ><o(((°>
<°)))o>< ><o(((°>o
Der Valigator leibt diese Fische
><o(((°> ><o(((°>
<°)))o>< ><o(((°>o
Der Valigator leibt diese Fische