Hallo zusammen,
das hier finde ich zu Hauf im Logfile:^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
Eine Idee wie ich dem auf die Schliche kommen kann? Stört das ä?
Habe verbose schon auf 4 gesetzt, finde aber in unmittelbarer Nähe nichts verdächtiges.
Danke und sonnigen Tag noch
Christian...
So sieht ein Neustart bei verbose 1 aus:2014.03.11 07:32:29 1: Including fhem.cfg
2014.03.11 07:32:29 1: Including FHEM/Funkadapter.cfg
2014.03.11 07:32:29 1: HMLAN_Parse: HMLAN_0 new condition disconnected
2014.03.11 07:32:29 1: HMLAN_Parse: HMLAN_0 new condition init
2014.03.11 07:32:29 1: Including FHEM/WEB.cfg
2014.03.11 07:32:29 1: Including FHEM/Multimedia.cfg
2014.03.11 07:32:29 1: Including FHEM/Steckdosen.cfg
2014.03.11 07:32:29 1: Including FHEM/FS20.cfg
2014.03.11 07:32:29 1: Including FHEM/HomeMatic.cfg
2014.03.11 07:32:29 1: Including FHEM/at.cfg
2014.03.11 07:32:29 1: Including FHEM/Anwesenheit.cfg
2014.03.11 07:32:29 1: HttpUtils url=<hidden>
2014.03.11 07:32:29 1: <hidden>: HTTP response code 200
2014.03.11 07:32:29 1: HttpUtils <hidden>: Got data, length: 4084
2014.03.11 07:32:29 1: HttpUtils url=<hidden>
2014.03.11 07:32:29 1: <hidden>: HTTP response code 200
2014.03.11 07:32:29 1: HttpUtils <hidden>: Got data, length: 1786
2014.03.11 07:32:29 1: HttpUtils url=<hidden>
2014.03.11 07:32:30 1: <hidden>: HTTP response code 200
2014.03.11 07:32:30 1: HttpUtils <hidden>: Got data, length: 47663
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 38, <$fh> line 362.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 38, <$fh> line 526.
2014.03.11 07:32:30 1: Including ./log/fhem.save
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
2014.03.11 07:32:31 1: HMLAN_Parse: HMLAN_0 new condition ok
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .\.Anwesenheit:Schläft$/ at ./FHEM/91_notify.pm line 66.
du hast eine regex definiert die einen * am anfang hat. ohne etwas davor. das ist meine gültige/sinnvolle regex.
gruss
andre
Zitat von: justme1968 am 11 März 2014, 08:24:40
du hast eine regex definiert die einen * am anfang hat. ohne etwas davor. das ist meine gültige/sinnvolle regex.
gruss
andre
Hallo Andre,
meinst Du
keine?
Ich habe das hier definiert:
*.\.Anwesenheit
Was ist stattdessen sinnvoll? Es soll auf Er.Anwesenheit und Sie.Anwesenheit "hören", aber nicht auf AlleAnwesenheit.
Danke schonmal
Aber das scheint's gewesen zu sein. Habe das daraus gemacht:(Sie.Anwesenheit|Er.Anwesenheit|Gast.Anwesenheit)
und das gibt kein guellendes Logfile.
Aber dennoch ziehe eine Wildcardlösung vor.
Warum soll das nicht sinnvoll sein wenn doch genügend dahinter steht?
Hallo,
umgekehrt ist oft besser ;)
Mach doch einfach
Anwesenheit_Er
Anwesenheit_Sie
Anwesenheit_Gast
draus.
Dann ist das regexp Anwesenheit_.*
Grüße
Edith: Einen . (Punkt) im Namen ziehe ich nach wie vor nicht in Erwägung da der Punkt in Perl für ein beliebiges Zeichen steht und daher per se schon ein regexp ist.
Zitat von: Puschel74 am 11 März 2014, 20:40:28
Hallo,
umgekehrt ist oft besser ;)
Mach doch einfach
Anwesenheit_Er
Anwesenheit_Sie
Anwesenheit_Gast
draus.
Dann ist das regexp Anwesenheit_.*
Grüße
Das löst mein Problem auch nicht, da ich den Punkt ebenfalls abfragen muss. Aber laut dieser Erklärung (http://www.fhemwiki.de/wiki/Funktionsbeschreibung_zu_notify#Syntax_von_notify) muss es so heißen:
.*\.Anwesenheit
So geht's.
Danke für die Hilfe :)
Zitat von: Puschel74 am 11 März 2014, 20:40:28Edith: Einen . (Punkt) im Namen ziehe ich nach wie vor nicht in Erwägung da der Punkt in Perl für ein beliebiges Zeichen steht und daher per se schon ein regexp ist.
hmmm okay, das werde ich ändern. Danke :)
Zitat.*\.Anwesenheit
Wozu der \ ?
Ein
Sie.Anwesenheit
Er.Anwesenheit
Gast.Anwesenheit
sollte sich auch mit einem
.*.Anwesenheit
treffen lassen
Weil man einen Punkt mit einem backslash escapen muss, wenn er als Zeichen in einem String gematcht werden soll.
Das gilt für alle Meta-Zeichen. z.B. auch das Minuszeichen.
Ach deswegen die Verrenkung mit dem \
Wieder was gelernt - danke dir.
Zitat von: Puschel74 am 11 März 2014, 20:50:47
Wozu der \ ?
Ein
Sie.Anwesenheit
Er.Anwesenheit
Gast.Anwesenheit
sollte sich auch mit einem
.*.Anwesenheit
treffen lassen
Ich dachte ich müsse den . maskieren. Denn wie gesagt JemandAnwesenheit darf nicht matchen.
In dem Fall aber wohl egal, da der Punkt einem Zeichen entspricht und das ist hier eben auch ein Punkt, wenn ich das richtig verstanden habe ;)
nein, das hast Du falsch verstanden.
Zitat von: Puschel74 am 11 März 2014, 21:07:03Ach deswegen
Du lieferst aktuell wieder so viele Steilvorlagen, bis Du wieder beleidigt bist 8)
Das mit dem falsch verstanden bezog sich nicht auf das Regexp sondern auf die Namensgebung und den Punkt darin. Alles andere habe ich schon richtig verstanden. .*.Anwesenheit funktioniert grundsätzlich, ist aber das gleiche wie .*Anwesenheit und schließt wahrscheinlich zu wenig aus.
ZitatDu lieferst aktuell wieder so viele Steilvorlagen, bis Du wieder beleidigt bist
Keine Angst - ich weiß ab wann ich dich ignorieren kann 8)
Ich bin ja lernfähig ;)
Beide in die Ecke. 6.