[gelöst] Zeichenkette zerlegen

Begonnen von oniT, 18 September 2014, 15:46:42

Vorheriges Thema - Nächstes Thema

oniT

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
BBB - debian weezy - FHEM 5.7
HMLAN - HM-LC-Bl1-FM, HM-ES-PMSw1-PI, HM-LC-Sw1-FM, HM-TC-IT-WM-W-EU, HM-WDS40-TH-I, HM-Sen-Wa-Od, HM-Sec-RHS
Dimplex Wärmepumpe / Dimplex ZL 300 - Modbus TCP
SDM630M - Modbus TCP
SolarLog 200 / SMA SonnyBoy 1.5/2.5 - Modbus TCP

betateilchen

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 ;)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

oniT

#2
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
BBB - debian weezy - FHEM 5.7
HMLAN - HM-LC-Bl1-FM, HM-ES-PMSw1-PI, HM-LC-Sw1-FM, HM-TC-IT-WM-W-EU, HM-WDS40-TH-I, HM-Sen-Wa-Od, HM-Sec-RHS
Dimplex Wärmepumpe / Dimplex ZL 300 - Modbus TCP
SDM630M - Modbus TCP
SolarLog 200 / SMA SonnyBoy 1.5/2.5 - Modbus TCP

Puschel74

Hallo,

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

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

oniT

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
BBB - debian weezy - FHEM 5.7
HMLAN - HM-LC-Bl1-FM, HM-ES-PMSw1-PI, HM-LC-Sw1-FM, HM-TC-IT-WM-W-EU, HM-WDS40-TH-I, HM-Sen-Wa-Od, HM-Sec-RHS
Dimplex Wärmepumpe / Dimplex ZL 300 - Modbus TCP
SDM630M - Modbus TCP
SolarLog 200 / SMA SonnyBoy 1.5/2.5 - Modbus TCP