Norbert Kölln: Regulärer Ausdruck / Suche + Vergleichen

Beitrag lesen

Moin, moin!

Schneller, ungeprüfter Vorschlag:

Datei in Variable einlesen

open(DAT, "<daten.dat");
while(<DAT>) { $daten.=$_; }
close(DAT);

Wenn eine Zeile mit "XY-WERT" beginnt

und in der folgenden Zeile nach einem Tab-Sprung "Wert=",

eine "1" und genau zwei weitere Ziffern kommen...

if($daten=~/\nXY-WERT.*?\n\tWert=1\d{2}\D/)
{
  print "100 <= XY-Wert < 200\n";
}

Nicht berücksichtigt ist beispielsweise der Sonderfall, das XY-WERT in der ersten Zeile der Datei steht. Und so einfach geht es nur, wenn beim Wert 100 eine Reaktion erfolgen soll, bei 200 jedoch nicht. Und führende Nullen etc. würden zu Problemen führen.

Alles klar?

Norbert