Was für ein Experte bin ich eigentlich? (Teil 2)

Selbsterkenntnis ist bekanntlich der erste Schritt zur Besserung. In diesem Sinne gebe ich offen zu, dass ich bis vor kurzem nicht wusste, dass der Match-Operator nicht nur einen True/False-Wert zurückgibt, sondern das Ergebnis des auf einem regulären Ausdruck basierenden Vergleichs in der globalen Variable $Matches ablegt (!), was natürlich sehr praktisch ist.

Ein

„192.168.1.100 Status: Error [MSG 100] – no connection“ -match „\[MSG\s+(?<Msg>\d{3})\]“

liefert die „gematchte“ Msg-Nummer z.B. über ein $Matches[„Msg“]. Und das ist wirklich sehr praktisch. Herausgefunden habe ich diese Kleinigkeit beim Lesen des sehr lesenswerten Blogs von Klaus Graefensteiner (den ich allerdings nicht persönlich kenne).

Ein Geheimnis ist dieses kleine Detail allerdings nicht. Zwar ist es nicht Teil der offiziellen Hilfedatei about_regular_expressions, aber man findet einen Hinweis  (wie ich es danach „entdeckt“ hatte) in der sehr praktischen Datei QuadFold.rtf, die mit der PowerShell installiert wird. Man sollte öfter einmal das Handbuch lesen. Diese Regel gilt in der „EDV“ bereits seit den 70er Jahren, was für mich der Beweis ist, dass wirklich gute Ratschläge zeitlos sind.

Advertisements

Kommentar verfassen

Bitte logge dich mit einer dieser Methoden ein, um deinen Kommentar zu veröffentlichen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s