Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Parser Regex

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.2k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

Parser Regex

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
11 Beiträge 3 Kommentatoren 704 Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M Online
    M Online
    MCU
    schrieb am zuletzt editiert von MCU
    #2

    @Wuffi26
    Mit javascript?

    let dpInhalt = { 
        "val": "{\"InverterStatus\":5,\"InputPower\":270,\"PV1Voltage\":362.9,\"PV1InputCurrent\":0.7,\"PV1InputPower\":257.9,\"PV2Voltage\":288.4,\"PV2InputCurrent\":0,\"PV2InputPower\":20.9,\"OutputPower\":496.7,\"GridFrequency\":49.98,\"L1ThreePhaseGridVoltage\":241.5,\"L1ThreePhaseGridOutputCurrent\":2.3,\"L1ThreePhaseGridOutputPower\":492.9,\"L2ThreePhaseGridVoltage\":0,\"L2ThreePhaseGridOutputCurrent\":0,\"L2ThreePhaseGridOutputPower\":0,\"L3ThreePhaseGridVoltage\":0,\"L3ThreePhaseGridOutputCurrent\":0,\"L3ThreePhaseGridOutputPower\":0,\"TodayGenerateEnergy\":27.9,\"TotalGenerateEnergy\":6828.3,\"TWorkTimeTotal\":5.903158e7,\"PV1EnergyToday\":12.3,\"PV1EnergyTotal\":3153.6,\"PV2EnergyToday\":17.1,\"PV2EnergyTotal\":3378.2,\"PVEnergyTotal\":6554.4,\"InverterTemperature\":36,\"TemperatureInsideIPM\":33.3,\"BoostTemperature\":35.9,\"DischargePower\":0,\"ChargePower\":0,\"BatteryVoltage\":53.3,\"SOC\":100,\"ACPowerToUser\":0,\"ACPowerToUserTotal\":0,\"ACPowerToGrid\":81,\"ACPowerToGridTotal\":81,\"INVPowerToLocalLoad\":200,\"INVPowerToLocalLoadTotal\":200,\"BatteryTemperature\":26,\"BatteryState\":5,\"EnergyToUserToday\":1.2,\"EnergyToUserTotal\":8244.3,\"EnergyToGridToday\":0.8,\"EnergyToGridTotal\":217.9,\"DischargeEnergyToday\":8.8,\"DischargeEnergyTotal\":3086.6,\"ChargeEnergyToday\":10.8,\"ChargeEnergyTotal\":3092.5,\"LocalLoadEnergyToday\":27.8,\"LocalLoadEnergyTotal\":14574.9,\"ACChargeEnergyToday\":0.4,\"ACChargeEnergyTotal\":840.4,\"Mac\":\"48:55:19:68:30:C9\",\"Cnt\":100808}", 
        "ack": true, 
        "ts": 1719331820944, 
        "q": 0, 
        "from": "system.adapter.mqtt.0", 
        "user": "system.user.admin", 
        "lc": 1719331820944, 
        "_id": "mqtt.0.SPH4600", 
        "common": { "name": "SPH4600", "write": true, "read": true, "role": "variable", "desc": "mqtt server variable", "type": "string" }, 
        "native": { "topic": "SPH4600" }, 
        "type": "state", 
        "acl": { "object": 1636, "state": 1636, "owner": "system.user.dressman79", "ownerGroup": "system.group.user" } 
        }
    
    let val = dpInhalt.val
    let parsedVal = JSON.parse(val)
    log(parsedVal.SOC)
    log(parsedVal.Cnt)
    

    DP holen

    let val = getState('mqtt.0.SPH4600').val
    let parsedVal = JSON.parse(val)
    log(parsedVal.SOC)
    log(parsedVal.Cnt)
    

    fe904bd5-1ab3-4ef0-b77d-096368dfcc5b-image.png

    NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
    Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

    1 Antwort Letzte Antwort
    0
    • W Offline
      W Offline
      Wuffi26
      schrieb am zuletzt editiert von
      #3

      Danke für die schnelle, aber mit JS habe ich keinen Plan. In der Parser Instanz kann man eine Regex eingeben, da der string sich immer wieder aktualisiert, wolle eigentlich diesen Weg nehmen. Wie könnte man das noch realisieren?

      M OliverIOO 2 Antworten Letzte Antwort
      0
      • W Wuffi26

        Danke für die schnelle, aber mit JS habe ich keinen Plan. In der Parser Instanz kann man eine Regex eingeben, da der string sich immer wieder aktualisiert, wolle eigentlich diesen Weg nehmen. Wie könnte man das noch realisieren?

        M Online
        M Online
        MCU
        schrieb am zuletzt editiert von MCU
        #4

        @wuffi26 Keine Ahnung ob es funktioniert
        Regex

        \"SOC\":(\d+(\.\d+)?)
        
        /\"SOC\":(\d+(\.\d+)?)/
        

        NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
        Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

        1 Antwort Letzte Antwort
        0
        • W Offline
          W Offline
          Wuffi26
          schrieb am zuletzt editiert von
          #5

          OK danke werde es gleich mal probieren.

          1 Antwort Letzte Antwort
          0
          • W Offline
            W Offline
            Wuffi26
            schrieb am zuletzt editiert von
            #6

            @mcu said in Parser Regex:

            /"SOC":(\d+(.\d+)?)/

            Leider keine Ergebnisse.

            1 Antwort Letzte Antwort
            0
            • W Offline
              W Offline
              Wuffi26
              schrieb am zuletzt editiert von
              #7

              Wenn ich nur SOC eingebe findet er logischerweise Nur das Wort.

              1 Antwort Letzte Antwort
              0
              • W Wuffi26

                Danke für die schnelle, aber mit JS habe ich keinen Plan. In der Parser Instanz kann man eine Regex eingeben, da der string sich immer wieder aktualisiert, wolle eigentlich diesen Weg nehmen. Wie könnte man das noch realisieren?

                OliverIOO Offline
                OliverIOO Offline
                OliverIO
                schrieb am zuletzt editiert von OliverIO
                #8

                @wuffi26

                oder so

                \\\"SOC\\\":([\d\.\,]+),
                

                das regex brücksichtigt auch, das die zahl auch mal punkt und komma enthält
                snsonsten reicht auch

                \\\"SOC\\\":([\d]+),
                

                Meine Adapter und Widgets
                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                Links im Profil

                1 Antwort Letzte Antwort
                0
                • W Offline
                  W Offline
                  Wuffi26
                  schrieb am zuletzt editiert von
                  #9

                  @oliverio said in Parser Regex:

                  \"SOC\":([\d.,]+),

                  Ein Regex Experte, es fontioniert. Ich werde daraus einfach nicht schlau. Vielen Dank.

                  OliverIOO 1 Antwort Letzte Antwort
                  0
                  • W Wuffi26

                    @oliverio said in Parser Regex:

                    \"SOC\":([\d.,]+),

                    Ein Regex Experte, es fontioniert. Ich werde daraus einfach nicht schlau. Vielen Dank.

                    OliverIOO Offline
                    OliverIOO Offline
                    OliverIO
                    schrieb am zuletzt editiert von
                    #10

                    @wuffi26

                    ja regex ist hart.
                    habe auch mehrere anläufe über die jahre gebraucht bis ich es kapiert habe

                    die folgende seite hilft da enorm.
                    da habe ich genau deinen fall mal gespeichert.
                    oben rechts steht die beschreibung welche zeichen da was genau was matcht.
                    die größte schwierigkeit besteht ein stop zeichen zu finden, da regex als greedy gilt und lieber mehr zeichen anzeiht als zu wenig.
                    aber hier haben wir das , nach der zahl
                    https://regex101.com/r/WiCynN/1

                    Meine Adapter und Widgets
                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                    Links im Profil

                    1 Antwort Letzte Antwort
                    0
                    • W Offline
                      W Offline
                      Wuffi26
                      schrieb am zuletzt editiert von
                      #11

                      Ok vielen Dank für Deine Hilfe.

                      1 Antwort Letzte Antwort
                      0
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate
                      FAQ Cloud / IOT
                      HowTo: Node.js-Update
                      HowTo: Backup/Restore
                      Downloads
                      BLOG

                      466

                      Online

                      32.5k

                      Benutzer

                      81.7k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe