Problem mit .*<TeilDerDeviceNamen>

Begonnen von wkarl, 03 August 2014, 13:52:12

Vorheriges Thema - Nächstes Thema

wkarl

Hallo,

gut, ich bin nicht der regex-nerd, dennoch glaubte ich es zu verstehen. Folgendes liefert ein eigenartiges Ergebnis.
set .*_TC_Climate controlMode manual
Es werden neben den gewollt adressierten TCs auch alle anderen devices involviert.
Unknown argument controlMode, choose one of absorb:FileLog_Badezimmer_FH,FileLog_Badezimmer_HK,FileLog_Badezimmer_HK_ClimRT_tr,FileLog_Badezimmer_HK_ClimaTeam,FileLog_Badezimmer_HK_Climate,FileLog_Badezimmer_HK_Weather,FileLog_Badezimmer_HK_WindowRec,FileLog_Badezimmer_HK_remote,FileLog_Badezimmer_TC,FileLog_Badezimmer_TC_Weather,FileLog_Badezimmer_TC_WindowRec,FileLog_Bewegungsmelder_HolzHuette,FileLog_BoschEconomic,FileLog_Buero_FH,FileLog_Buero_HK,FileLog_Buero_TC,FileLog_DieleWindfang_TC,FileLog_DieleWindfang_TC_Climate,FileLog_DieleWindfang_TC_Weather,FileLog_DieleWindfang_TC_WindowRec,FileLog_DieleWindfang_TK_HausTuer,FileLog_Diele_FH,FileLog_DimmSteckdose_01,FileLog_DimmSteckdose_02,FileLog_Esszimmer_FH,FileLog_Esszimmer_HK,FileLog_Esszimmer_HK_ClimRT_tr,FileLog_Esszimmer_HK_ClimaTeam,FileLog_Esszimmer_HK_Climate,FileLog_Esszimmer_HK_Weather,FileLog_Esszimmer_HK_WindowRec,FileLog_Esszimmer_HK_remote,FileLog_Esszimmer_TC,FileLog_Esszimmer_TC_Climate,FileLog_Esszimmer_TC_Weather,FileLog_Esszimmer_TC_WindowRec,FileLog_Esszimmer_TK_Tuer,FileLog_GaesteToilette_FH,FileLog_GaesteToilette_TC,FileLog_GaesteToilette_TC_Climate,FileLog_GaesteToilette_TC_Weather,FileLog_GaesteToilette_TC_WindowRec,FileLog_HMLAN_RepeaterEG_01,FileLog_HMLAN_RepeaterEG_02,FileLog_HMLAN_RepeaterOG,FileLog_Janine_FH_Fenster,FileLog_Janine_FH_Tuer,FileLog_Janine_HK,FileLog_Janine_HK_ClimRT_tr,FileLog_Janine_HK_ClimaTeam,FileLog_Janine_HK_Climate,FileLog_Janine_HK_Weather,FileLog_Janine_HK_WindowRec,FileLog_Janine_HK_remote,FileLog_Janine_TC,FileLog_Janine_TC_Climate,FileLog_Janine_TC_Weather,FileLog_Janine_TC_WindowRec,FileLog_Janine_TK_Tuer,FileLog_Klima_TempHum,FileLog_Kueche_FH,FileLog_Kueche_HK,FileLog_Kueche_HK_ClimRT_tr,FileLog_Kueche_HK_ClimaTeam,FileLog_Kueche_HK_Climate,FileLog_Kueche_HK_Weather,FileLog_Kueche_HK_WindowRec,FileLog_Kueche_HK_remote,FileLog_Kueche_TC,FileLog_Kueche_TC_Climate,FileLog_Kueche_TC_Weather,FileLog_Kueche_TC_WindowRec,FileLog_Kueche_TK_Tuer,FileLog_LM_Steckdose_01,FileLog_LM_Steckdose_02,FileLog_SchaltSteckdosePM01,FileLog_SchaltSteckdosePM01_Pwr,FileLog_Schlafzimmer_FH_Fenster,FileLog_Schlafzimmer_FH_Tuer,FileLog_Schlafzimmer_TC,FileLog_Schlafzimmer_TC_Climate,FileLog_Schlafzimmer_TC_Weather,FileLog_Schlafzimmer_TC_WindowRec,FileLog_Schlafzimmer_TK_Tuer,FileLog_Temperatur_FH,FileLog_Temperatur_FH_DiffRLVL,FileLog_Temperatur_FH_DiffVLRL,FileLog_Temperatur_FH_Event,FileLog_Temperatur_FH_Ruecklauf,FileLog_Temperatur_FH_Vorlauf,FileLog_Temperatur_WarmWasser,FileLog_Vanessa_FH_Fenster,FileLog_Vanessa_FH_Tuer,FileLog_Vanessa_HK,FileLog_Vanessa_HK_ClimRT_tr,FileLog_Vanessa_HK_ClimaTeam,FileLog_Vanessa_HK_Climate,FileLog_Vanessa_HK_Weather,FileLog_Vanessa_HK_WindowRec,FileLog_Vanessa_HK_remote,FileLog_Vanessa_TC,FileLog_Vanessa_TC_Climate,FileLog_Vanessa_TC_Weather,FileLog_Vanessa_TC_WindowRec,FileLog_Vanessa_TK_Tuer,FileLog_VerbrauchGas_Zaehler_Gesamt,FileLog_VerbrauchStrom_Zaehler_Gesamt,FileLog_Windfang_FH,FileLog_Wohnzimmer_FH_Ost,FileLog_Wohnzimmer_FH_Sued,FileLog_Wohnzimmer_FH_West,FileLog_Wohnzimmer_HK,FileLog_Wohnzimmer_HK_ClimRT_tr,FileLog_Wohnzimmer_HK_ClimaTeam,FileLog_Wohnzimmer_HK_Climate,FileLog_Wohnzimmer_HK_Weather,FileLog_Wohnzimmer_HK_WindowRec,FileLog_Wohnzimmer_HK_remote,FileLog_Wohnzimmer_RL_Teich,FileLog_Wohnzimmer_RL_Terasse,FileLog_Wohnzimmer_TC,FileLog_Wohnzimmer_TC_Climate,FileLog_Wohnzimmer_TC_Weather,FileLog_Wohnzimmer_TC_WindowRec,FileLog_Wohnzimmer_TK_Tuer,FileLog_Zirkulationspumpe_FH,FileLog_Zirkulationspumpe_HK,Logfile addRegexpPart removeRegexpPart reopen
Ich suche jetzt schon eine geraume Zeit nach der Lösung, aber ich habe nicht den Funken eines Ansatzes.
Vermutlich ist die Ursache so trivial, dass ich es nicht sehe.

Danke und ciao
walter
FHEM 5.7 & TabletUI 2.2 auf Fedora22 Server auf NUC5i5RYK
CUL 868 > FAST EnergyCam
HMLAN > HomeMatic TCs & VDs, Bewegungsmelder, Schalter, Taster, Steckdosen

marvin78

Nun. Welches Ergebnis liefert es denn? Und wie heißen deine Geräte vollständig?

wkarl

sorry, Vorschau mit Schreiben verwechselt. Deswegen unvollständig.  :o
FHEM 5.7 & TabletUI 2.2 auf Fedora22 Server auf NUC5i5RYK
CUL 868 > FAST EnergyCam
HMLAN > HomeMatic TCs & VDs, Bewegungsmelder, Schalter, Taster, Steckdosen

wkarl

Hallo Marvin,

bei den TCs steht vorne das Zimmer - z.B. Kueche_TC_Climate.
ciao walter
FHEM 5.7 & TabletUI 2.2 auf Fedora22 Server auf NUC5i5RYK
CUL 868 > FAST EnergyCam
HMLAN > HomeMatic TCs & VDs, Bewegungsmelder, Schalter, Taster, Steckdosen

betateilchen

Man sollte eine regexp niemals mit .* anfangen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

wkarl

Danke, habe es jetzt über structure gelöst.
ciao walter
FHEM 5.7 & TabletUI 2.2 auf Fedora22 Server auf NUC5i5RYK
CUL 868 > FAST EnergyCam
HMLAN > HomeMatic TCs & VDs, Bewegungsmelder, Schalter, Taster, Steckdosen

UliM

Hi,
.* ist 'greedy', also gierig - es matcht so viel wie geht - und das ist einfach 'alles'.
Non-greedy geht mit .*? , siehe zB
http://www.itworld.com/nl/perl/01112001

Gruß, Uli
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.