Thread String einlesen und nachfolgendes Wort ausgeben (20 answers)
Opened by SCORRPiO at 2014-04-15 10:15

FIFO
 2014-04-15 11:16
#174778 #174778
User since
2005-06-01
469 Artikel
BenutzerIn

user image
Bedenke auch, dass die Schlüsselwörter in Deinem Suchmuster auch einen Anfang haben, /phy\s/ matcht auch "unphy". Verwende z.B. \b, übersichtlicher (mit /x):

Code (perl): (dl )
1
2
3
4
5
6
    if ( $zeile =~ /OUT_OF_SYNC/ ) {
        my ($phy)   = $zeile =~ / \b phy   \s+ (\w+) /x;
        my ($state) = $zeile =~ / \b state \s+ (\w+) /x;
        my ($flags) = $zeile =~ / \b flags \s+ (\w+) /x;
        printf "phy: $phy, state: $state, flags: $flags\n";
    }


Wenn die Reihenfolge der Felder immer gleich ist, kannst Du alles in einem Rutsch zuweisen (in ein RegEx packen und dann an Liste zuweisen).

Editiert von FIFO: Kosmetik
Last edited: 2014-04-15 11:20:17 +0200 (CEST)
Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it? -- Brian Kernighan: "The Elements of Programming Style"

View full thread String einlesen und nachfolgendes Wort ausgeben