FHEM Forum

FHEM => Sonstiges => Thema gestartet von: oniT am 18 September 2014, 15:46:42

Titel: [gelöst] Zeichenkette zerlegen
Beitrag von: oniT am 18 September 2014, 15:46:42
Hallo,

das Statistic Modul liefert ja als Reading u.a. den min-, durchschnitts- und max-Wert.

Zum Beispiel:


Min: 9.8 Avg: 12.3 Max: 15.7


Jetzt benötige ich mal Hilfe, da mir das mit den regex zu hoch ist :-) Wie muss dieser den sein, damit ich über ein ReadingsVal nur den Wert entweder für Min, Avg oder Max bekomme?

Würde mir bitte jemand den entsprechenden Code liefern.

Danke

Gruß,
Tino
Titel: Antw:Zeichenkette zerlegen
Beitrag von: betateilchen am 18 September 2014, 15:54:38
Da ist überhaupt nicht viel regexp im Spiel. Einfach am Leerzeichen splitten (perl Standardfunktion) und den 2. / 4. / 6. Wert verwenden.


my $werte = ReadingsVal(... hier das device und reading eintragen ...);
my @einzelwerte = split(/ /,$werte);
my $w_min = $einzelwerte[1];
my $w_avg = $einzelwerte[3];
my $w_max = $einzelwerte[5];


Ich habs mal extra ausführlich gemacht, damit es verständlich bleibt. Man kann das natürlich noch viel kürzer bauen ;)
Titel: Antw:Zeichenkette zerlegen
Beitrag von: oniT am 18 September 2014, 16:10:45
Hallo betateilchen,

ja ja, splitten am Leerzeichen. Jetzt wo ich es sehe ist es ganz einfach. An das Splitten habe ich schon Gedacht, nur viel zu kompliziert und eben nicht an das Leerzeichen :-)

Danke

Gruß,
Tino
Titel: Antw:Zeichenkette zerlegen
Beitrag von: Puschel74 am 18 September 2014, 17:05:53
Hallo,

wenn du den ersten Beitrag bearbeitest und dort dem Titel ein gelöst verpasst sieht man das auch in der Übersicht  ;)

Grüße
Titel: Antw:[gelöst] Zeichenkette zerlegen
Beitrag von: oniT am 18 September 2014, 20:20:34
Hi Puschel,

war eigentlich auch so gedacht.  :)

Scheinbar hatte ich den Beitrag wohl 2 mal bearbeitet und das gelöst wieder gelöscht  :-\

Gruß,
Tino