FHEM Forum

FHEM => Automatisierung => Thema gestartet von: frober am 28 November 2021, 20:56:21

Titel: [gelöst]Watchdog: regex im regexp1 funktioniert nicht
Beitrag von: frober am 28 November 2021, 20:56:21
Hallo zusammen,

wieso funktioniert folgende Def. nicht, ist die Schreibweise für regexp1 nicht zulässig?
MYSENSOR_3:temperature1.(^[0-7][\.][0-9]) 02:00 MYSENSOR_3:temperature1.([0-9\.]{4,4}) {}
In regexp2 funktioniert es :o
MYSENSOR_3:temperature1.* 02:00 MYSENSOR_3:temperature1.([0-9\.]{4,4}) {}
Beide regex habe ich mittels Regextester erstellt.

Danke und Grüße
Bernd
Titel: Antw:Watchdog: regex im regexp1 funktioniert nicht
Beitrag von: Benni am 29 November 2021, 08:00:19
MYSENSOR_3:temperature1.(^[0-7][\.][0-9])

Der Grund warum es nicht funktioniert dürfte das "^" sein. Das ist in regex der Zeilenanfang. Das befindet sich aber mitten in der Zeile.

Außerdem ist m.E. die Gruppenbildung "(...)" unnötig.


gb#
Titel: Antw:Watchdog: regex im regexp1 funktioniert nicht
Beitrag von: frober am 29 November 2021, 09:05:21
Der Grund warum es nicht funktioniert dürfte das "^" sein. Das ist in regex der Zeilenanfang. Das befindet sich aber mitten in der Zeile.

Außerdem ist m.E. die Gruppenbildung "(...)" unnötig.


gb#

Das "^" könnte mit ein Grund sein, ich bin davon ausgegangen, dass es auf EVTPART1 angewendet wird.

Ich habe aber noch weitere Bsp. die nicht funktionieren:
MYSENSOR_3:temperature1.([8-9][\.][0-9])Zisternenpumpe:power.([0-9\.]{5,5})
Titel: Antw:Watchdog: regex im regexp1 funktioniert nicht
Beitrag von: frober am 29 November 2021, 09:29:56
Ok, ich muss das komplette Event auswerten.
@Benni danke für den Stups.  :)

So funktioniert es:
MYSENSOR_3:temperature1[\s][0-7][\.][0-9]
Nachtrag:
MYSENSOR_3:temperature1.[0-7][\.][0-9]funktioniert auch.

Wichtig ist, die Gruppenbildung "(...)" darf man nicht verwenden, damit das komplette EVENT gematcht wird.