wollte Komma durch Punkt ersetzen, klappt leider nicht, was stimmt mit diesem Befehl nicht
my $temps=(ReadingsVal("heizungszdummy","state",""));;\
$temps =~ s/\,/ . /;;\
das bedeutet z.B. , wenn der wert von heizungszdummy 21,5, möchte ich diesen wert durch 21.5 ersetzen.
danke
Hi,
klappt nicht? Die Katzenklappe oder welche? ;D
Sowas kannst Du direkt in der FHEM Kommandozeile ausprobieren - funktioniert :)
{ my $val = "21,5" ;; $val =~ s/\,/./ ;; return $val}
Gruß Otto
https://regex101.com/
LG
pah
Heist dein Dummy wirklich heizungszdummy?
Was sagt {return (ReadingsVal("heizungszdummy","state",""))}
?
Wenn du lediglich den Wert aus dem Reading "state" als Internal STATE setzen möchtest, kannst du das perattr heizungszdummy stateFormat {my $temps=(ReadingsVal("heizungszdummy","state",""));;$temps =~ s/\,/./;;return $temps}
erledigen. (sh. Beitrag von Otto123)
Allerdings müssen dann neue Werte an das Reading "state" übergeben werden.
setreading heizungszdummy state 21,4
Gruß Jens