FHEM Forum

FHEM => Automatisierung => Thema gestartet von: hmtec99 am 06 März 2017, 15:53:46

Titel: Notify/FileLog - Regex Groß-/Kleinschreibung ignorieren
Beitrag von: hmtec99 am 06 März 2017, 15:53:46
Hallo Leute,

wie kriege ich es hin, daß die Groß-/Kleinschreibung (bei mir Filelog, müßte aber beim Notify dasselbe sein?!) ignoriert wird?

Sowas wie folgendes funktioniert nicht:

DEF ./log/TD_Connection_FileLog_1.log m/TD_.*:.*connect.*/i

Das Ganze soll auf alles reagieren was connect von Devices des Typs TD_undsoweiter beinhaltet, also z.B. connect / CONNECT / disconnect / DISCONNECT oder auch DiScoNnEcTiOn (nicht daß so etwas vorkommen sollte, aber wer weiß  :) )

Gruß, Oliver
Titel: Antw:Notify/FileLog - Regex Groß-/Kleinschreibung ignorieren
Beitrag von: betateilchen am 06 März 2017, 16:09:26
Die regexp in einem notify werden auch nicht in der Form m//i angegeben.

Was Du tun kannst:



DEF ./log/TD_Connection_FileLog_1.log TD_.*:.*(connect|CONNECT).*

Titel: Antw:Notify/FileLog - Regex Groß-/Kleinschreibung ignorieren
Beitrag von: rudolfkoenig am 06 März 2017, 16:15:37
define n1 notify (?i)td_.*:.*connect.* { Log 1, "Blub" }
Titel: Antw:Notify/FileLog - Regex Groß-/Kleinschreibung ignorieren
Beitrag von: Wernieman am 06 März 2017, 16:16:08
Habe (und kann) es nicht ausprobiert, aber perl-regex kennt den Schalter (?i)

Würde FHEM, da es auf Perl aufbaut, dieses auch akzeptieren?

Edit:
Danke Rudolf, Du hast mir meine Frage beantwortet (und warst schneller)
Titel: Antw:Notify/FileLog - Regex Groß-/Kleinschreibung ignorieren
Beitrag von: betateilchen am 06 März 2017, 16:30:08
wieder was gelernt... danke :)
Titel: Antw:Notify/FileLog - Regex Groß-/Kleinschreibung ignorieren
Beitrag von: hmtec99 am 06 März 2017, 16:50:47
Cool. Danke für die Antworten!

Die Variante mit connect|CONNECT habe ich mir auch gedacht, bin aber schreibfaul! :-)

Gruß, Oliver
Titel: Antw:Notify/FileLog - Regex Groß-/Kleinschreibung ignorieren
Beitrag von: hmtec99 am 06 März 2017, 17:03:37
Da ganze hat mich noch ein anderes Problem erinnert (habs dann irgendwie anders gelöst - kein Ahnung mehr).

Grundsätzlich ist es folgendermaßer, oder?

BSP1 Buchstabenfolgen: DEF ./log/TD_Connection_FileLog_1.log TD_.*:.*(connect|CONNECT).*
BSP2 Einzelne Buchstaben: DEF .*:[Bb]attery.*[Ll]ow.* set xyz on