Hallo
ich hab folgendes Problem:
ich habe ein Array
@lines in welchem alle relevanten Lines einer xml Datei bereits gefiltert sind.
Nun komm öfters eine Syscondition vor, diese soll aber dann ignoeriert werden, wenn sie nicht nach einem
DSM_MODIFY_FID oder
DSM_FID_ADD kommt...
for($i = 0; $i < @lines; $i++){
if($lines[$i+1] =~ /<SW-SYSCOND>/gi) {
#if($lines[$i] =~ ! /DSM_MODIFY_FID/gi || $lines[$i] =~ ! /DSM_FID_ADD/gi) {
#splice (@lines, $i,1,"");
#}
if($lines[$i] =~ /DSM_MODIFY_FID/gi)
{ print OUTPUT2 "$i DSM_MODIFY_FID\n";}
elsif($lines[$i] =~ /DSM_FID_ADD/gi)
{ print OUTPUT2 "$i DSM_FID_ADD\n";}
else {print OUTPUT2 "NICHTS VON ALLEM!!!!\n";}
}
}
Der auskommentierte Teil ist eigentlich mein Ansatz, ich habe dann aber versuch wenigstens die Abfrage zu testen.
Dabei printet er aber nur DSM_MODIFY_FID, was ich aber nicht verstehe, warum springt er nichteinmal in den else Zweig...?
Fehlermeldung in der Konsole:
Use of uninitialized value in pattern match (m//) at line 811
(diese hier:)
for($i = 0; $i < @lines; $i++){
Ich weiß, wahrscheinlich ist es ein dummmmer fehler, aber ich hänge echt gerade -.-
Vielen Dank :)