FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: cwagner am 01 Dezember 2023, 15:53:59

Titel: [gelöst] Valuefilter auf alle Werte > 50
Beitrag von: cwagner am 01 Dezember 2023, 15:53:59
Mit Valuefilter kann ich auf Ausdrücke filtern, auch auf eine Zahl oder Ziffer. Aber bei der Aufgabe, alle Werte oberhalb z.B. 50 zu filtern, breche ich mit die Hacken. Alle Varianten, die mir einfielen klappen einfach nicht. Selbst umständliche Reg-Exe, die von 51 an alle Werte filtern, haben nicht geklappt...  Es geht darum, mit Hilfe von DBRep bestimmte Fehlmessungen aus der Datenbank zu tilgen...

Hat jemand einen Tipp für mich?

Christian
Titel: Aw: Valuefilter auf alle Werte > 50
Beitrag von: DS_Starter am 02 Dezember 2023, 12:47:49
Hallo Christian,

in valueFiler muß man Datenbank spezifische REGEXP benutzen. Siehe die Hilfe mit ""get <name> versionNotes 4".
Für MariaDB gilt dies: https://mariadb.com/kb/en/regular-expressions-overview/

Als Beispiel kannst du valueFilter so setzen:

valueFilter  = ^([5,6,7,8,9][[:digit:]]|[1-4][0-9]{2})

Zahlen beginnend mit 5 oder 6 oder ... 9 und weiteren Digits werden selektiert.
Es fehlen dann noch die Zahlen beginnend mit 100 - 499. Die werden durch die Angabe nach dem "|" abgedeckt.

Führe damit erstmal ein "set ... fetchrows" aus. Wenn das soweit passt, kannst du "set ... delEntries" starten.

Grüße,
Heiko
Titel: Aw: Valuefilter auf alle Werte > 50
Beitrag von: cwagner am 02 Dezember 2023, 23:16:21
Hallo Heiko,

vielen Dank - das Detail, dass der RegEx für die Datenbanksprache angepasst ein muss, habe ich nicht erkannt. Vielen Dank für den Anstoß, damit kann man arbeiten und zum Ziel kommen.

Grüße

Christian