Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [gelöst] RegEx für Parser anpassen, nur wie?

NEWS

  • Wartung am 15.11. – Forum ab 22:00 Uhr nicht erreichbar
    BluefoxB
    Bluefox
    11
    2
    208

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.7k

[gelöst] RegEx für Parser anpassen, nur wie?

[gelöst] RegEx für Parser anpassen, nur wie?

Scheduled Pinned Locked Moved Skripten / Logik
7 Posts 3 Posters 988 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • umbmU Offline
    umbmU Offline
    umbm
    wrote on last edited by
    #1

    Hallo,

    nachdem ich seit Jahren mit fhem arbeite, bin ich nun dabei, (vorerst auf einem Parallel-System) mit ioBroker zu beginnen.

    Meine Fortschritte sind soweit recht gut, über ein Problem stolpere ich aber im Moment bzgl Regex für den Parser.

    Ich lese den Stand des Stromzählers über Volkszähler aus, der gibt folgendes als reinen Text über eine URL zurück:

    { "version": "0.5.1", "generator": "vzlogger", "data": [ { "uuid": "2459dbe0-ca8b-11e5-bae0-056d798c5a23", "last": 1527755518367, "interval": -1, "protocol": "d0", "tuples": [ [ 1527755280000, 15787.12 ] ] } ] }
    

    Dabei ist die letzte Zahlenkolonne der Zählerstand (15787.12)

    Mittels Parser und Regex \d{5,6}.\d{2} bekomme ich den Zählerstand zurück… fast immer.

    Das Problem:

    Wenn der Zählerstand keine Dezimalstelle hat, wird er z.B. nur so ausgegeben: 15787

    In dem Moment greift Regex nicht und ich finde keine Lösung, ohne dass auch diverse andere Zahlenkolonnen aus dem Text erfasst werden.

    Hat jemand eine Idee, wie sich das verbessern lässt?

    Danke

    Gruß Gerd

    1 Reply Last reply
    0
    • Jey CeeJ Online
      Jey CeeJ Online
      Jey Cee
      Developer
      wrote on last edited by
      #2

      Zum testen gehst du auf regex101.com

      Und was du suchst sind Gruppen und 'oder'.

      Das ist auf der Seite alles Dokumentiert rechts unten. Achtung du musst JavaScript auswählen auf der Seite.

      Gesendet von meinem m8 mit Tapatalk

      Persönlicher Support
      Spenden -> paypal.me/J3YC33

      1 Reply Last reply
      0
      • umbmU Offline
        umbmU Offline
        umbm
        wrote on last edited by
        #3

        Danke für den Tip mit Gruppen und Oder

        Die Seite zum Testen kenne ich natürlich…;)

        1 Reply Last reply
        0
        • ruhr70R Offline
          ruhr70R Offline
          ruhr70
          wrote on last edited by
          #4

          schaue ich mir nachher mal an

          Gesendet von iPhone mit Tapatalk

          Adapter: Fritzbox, Unify Circuit
          Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

          1 Reply Last reply
          0
          • ruhr70R Offline
            ruhr70R Offline
            ruhr70
            wrote on last edited by
            #5

            @umbm:

            Wenn der Zählerstand keine Dezimalstelle hat, wird er z.B. nur so ausgegeben: 15787 `

            Eine Variante:

            , (\d+.+\d) ]
            

            In Gruppe 1 ist dann das Ergebnis.

            Adapter: Fritzbox, Unify Circuit
            Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

            1 Reply Last reply
            0
            • umbmU Offline
              umbmU Offline
              umbm
              wrote on last edited by
              #6

              Ich habe das nun über Nacht laufen lassen, um über mehrere Zählerstände ohne Dezimal zu kommen un es funktioniert perfekt.

              Vielen Dank

              1 Reply Last reply
              0
              • ruhr70R Offline
                ruhr70R Offline
                ruhr70
                wrote on last edited by
                #7

                Das erste + kannst Du noch einsparen : :lol:

                Adapter: Fritzbox, Unify Circuit
                Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                1 Reply Last reply
                0
                Reply
                • Reply as topic
                Log in to reply
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes


                Support us

                ioBroker
                Community Adapters
                Donate

                110

                Online

                32.4k

                Users

                81.3k

                Topics

                1.3m

                Posts
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                ioBroker Community 2014-2025
                logo
                • Login

                • Don't have an account? Register

                • Login or register to search.
                • First post
                  Last post
                0
                • Recent
                • Tags
                • Unread 0
                • Categories
                • Unreplied
                • Popular
                • GitHub
                • Docu
                • Hilfe