NEWS
Adapter "log Parser" - Komma bereinigen
-
@bahnuhr sagte in Adapter "log Parser" - Komma bereinigen:
Habe es mal versucht mit regex101
wo meinst du, dass ich es her habe?
Sorry, mein Fehler - melde mich gleich!
-
dein oben geposteter sieht aber anders aus
-
@bahnuhr sagte in Adapter "log Parser" - Komma bereinigen:
dein oben geposteter sieht aber anders aus
ja, hatte ihn anschließend noch was optimiert
Aber jetzt:
tus": {"(.+\s.+\s.+), "cl
oder:
tus": {"([\w\W]+), "cl
-
@Homoran sagte in Adapter "log Parser" - Komma bereinigen:
tus": {"(.+\s.+\s.+), "cl
Rainer,
ich brauchs aber genau andersrum.
gemacht werden muss:
json = {"name": "Robo-Maeh", "id": "081603", "status":
und
, "clock": {"date": "2020-10-06", "time": "21:51:59", "unix": 1602021119}, "successful": true}Also der erste und letzte Teil, weil dies wird ja bereinigt.
Stehen bleiben soll dann:
{"status": 17, "distance": 0, "stopped": false, "dooropen": false, "duration": 182300, "mode": 2, "battery": 100, "hours": 6}, "timer": {"status": 0}, "blades": {"quality": 97, "hours": 6, "days": 6}, "wlan": {"signal": -74}, "health": {"temperature": 23, "humidity": 25}Gerne auch in 2 matches.
kann man ja dann mit Komma getrennt eintragen. -
@bahnuhr sagte in Adapter "log Parser" - Komma bereinigen:
json = {"name": "Robo-Maeh", "id": "081603", "status": {"status": 17, "distance": 0, "stopped": false, "dooropen": false,
"duration": 182300, "mode": 2, "battery": 100, "hours": 6}, "timer": {"status": 0}, "blades": {"quality": 97,
"hours": 6, "days": 6}, "wlan": {"signal": -74}, "health": {"temperature": 23, "humidity": 25}, "clock":
{"date": "2020-10-06", "time": "21:51:59", "unix": 1602021119}, "successful": true}Der 1. Teil geht so:
Nur der 2. Teil geht nicht.
-
@bahnuhr sagte in Adapter "log Parser" - Komma bereinigen:
ich brauchs aber genau andersrum.
Dan sach das doch
-
Und der 2. Teil klappt in regex101 so:
Jedoch nicht im Adapter.
-
-
@bahnuhr 2. Teoil:
(, "cl[\w\W]+)
-
@Homoran sagte in Adapter "log Parser" - Komma bereinigen:
(, "cl[\w\W]+)
Ich sags ja.
In 101 funktioniert dies.Im Adapter nicht !
Der Teil wird nicht entfernt!
Weiterhin:
json = {"name": "Robo-Maeh", "id": "081603", "status": {"status": 17, "distance": 0, "stopped": false, "dooropen": false, "duration": 243382, "mode": 2, "battery": 100, "hours": 6}, "timer": {"status": 0}, "blades": {"quality": 97, "hours": 6, "days": 6}, "wlan": {"signal": -75}, "health": {"temperature": 25, "humidity": 24}, "clock": {"date": "2020-10-07", "time": "14:49:59", "unix": 1602082199}, "successful": true}Eingegeben ist:
-
@bahnuhr sagte in Adapter "log Parser" - Komma bereinigen:
Im Adapter nicht !
auch nicht in dieser Schreibweise
was steht denn im Editor?
-
@Homoran sagte in Adapter "log Parser" - Komma bereinigen:
was steht denn im Editor?
Lt. Anleitung sind regex im Adapter mit / ... / einzuschließen.
Was meinst du mit Editor ?
-
@bahnuhr sagte in Adapter "log Parser" - Komma bereinigen:
Was meinst du mit Editor ?
ich war beim normalen Parser-Adapter, da kann man im Editor (Bleistift) sehen was passiert
ich müsste wissen wo sich das RegEx im Adapter aufhängt.
sonst muss man sich schrittweise ranarbieten, z.B. Leerzeichen durch\s
erstezen
(,\s\"cl[\w\W]+)
EDIT:
die beiden slashes sind ja hier auch:
EDIT2:
wenn der Adapter keine Kommata mag, dann kann ich mir nur noch helfen dieses zu escapen (hatten wir schon), oder wegzulassen und später wieder hinzuzufügen
-
@Homoran sagte in Adapter "log Parser" - Komma bereinigen:
oder wegzulassen und später wieder hinzuzufügen
was meinst du damit.
P.S.
\s
hat nichts gebracht; da bleibt wieder alles stehen. -
@bahnuhr sagte in Adapter "log Parser" - Komma bereinigen:
was meinst du damit.
das:
(\s\"cl[\w\W]+)
-
Rainer,
ich habs.Den 1.Teil mit:
/json = {"name"[^] "status": /Den 2. Teil mit:
/ "clock[^*]*l": true}/Und dann steht ja am Ende noch ein Komma; und dies dann mit:
/.{1}$/Da die einzelnen regex wohl nacheinander abgearbeitet werden, ist das Ergebnis dann korrekt.
Eingetragen hab ich somit:
/json = {"name"[^] "status": /,/ "clock[^*]*l": true}/,/.{1}$/mfg
DieterP.S.
Danke für deine Hilfe. -
-
@bahnuhr was bitte soll die
[^*]
bewirken?das bedeutet "enthält kein (beliebig viele)"
- Quantifier — Matches between zero and unlimited times, as many times as possible, giving back as needed (greedy)
-
@Homoran sagte in Adapter "log Parser" - Komma bereinigen:
@bahnuhr was bitte soll die
[^*]
bewirken?das bedeutet "enthält kein (beliebig viele)"
- Quantifier — Matches between zero and unlimited times, as many times as possible, giving back as needed (greedy)
Das ist zu hoch für mich.
Hab ich irgendwo her.
Es funktioniert aber. -
@bahnuhr sagte in Adapter "log Parser" - Komma bereinigen:
/ "clock[^*]*l": true}/
In 101 steht doch für *
also doch jedes zeichen; und dann der quantifier für beliebig viele.