Hallo
ich hatte neulich in einem notify eine änderung eingebaut , in der Art das es nun immer triggerte.
Wollte fragen, ob man diesen Fehler nicht abfangen kann ?
War natürlich meine Blödheit.
define N_Notify notify regex1|regex2| set command do
also ich hatte dann ein Pipe | ohne eine detaillierte Regex dahinter. Dies führte zum laufenden Triggern und zog fhem runter....
Oder sehe ich was falsch?
Danke Thomas
Keineswegs handelt es sich hier um eine Pipe. Und natürlich ist der leere String nach diesem "ODER"-Symbol ein regulärer Ausdruck.
Das notify hat genau so getriggert, wie es eingegeben war, es handelt sich also nicht um einen Fehler.
Man kann einfach nicht jeden möglichen Mist abfangen, den ein Benutzer sich ausdenkt.
LG
pah
Ja die Regex ist gültig aber unsinnig
Deshalb wäre eine Warnung eventuell sinnvoll
Das Problem sitzt immer vor den Rechner
Zitat von: riker1 am 14 Februar 2020, 21:37:47
Ja die Regex ist gültig aber unsinnig
Deshalb wäre eine Warnung eventuell sinnvoll
Das Problem sitzt immer vor den Rechner
Das ist nur eine von beliebig vielen unsinnigen Regex-Definitionen. Jeder, der schon länger mit Regex arbeitet, wird bestätigen, dass es ein unmögliches Unterfangen wäre, unsinnige Regex abzufangen.
Seinen wir alle mal ehrlich, wir haben ziemlich sicher mal unsinnige Regex geschrieben.
Aber Warnungen kann ich mir nicht vorstellen.
Am besten Hirn einschalten, bevor man Änderungen macht.
Ich mache es so, dass ich Änderungen oder auch Neudefinitionen zuerst beobachten, bevor ich weitermache.
Wenn möglich mache ich das zuerst am Testsystem. Es ist leider nicht überall möglich, denn zB. Homematic kann ich nur an an System binden.