Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. teile eines Strings löschen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    teile eines Strings löschen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Mikewolf
      Mikewolf @Homoran last edited by Homoran

      @homoran
      im datenpunkt steht

      NEUE Servicemeldung%0D%0ABewegung_Og : %0D%0ASabotage %0D%0A1 mal seit: 03.12.23 19:42 ( zuletzt: 03.12.23 19:42)%0D%0A%0D%
      

      oder

      NEUE Servicemeldung%0D%0AWC_EG : %0D%0ABatterie leer %0D%0A1 mal seit: 01.12.23 14:12 ( zuletzt: 03.12.23 20:42)%0D%0A%0D%
      

      in neuen Datenpunkt sollte es so aussehen

      NEUE Servicemeldung Bewegung_Og : Sabotage  mal seit: 03.12.23 19:42 ( zuletzt: 03.12.23 19:42)
      

      ich möchte eigentlich nur aus dem string %0D%0A löschen
      Mit freundlichen Grüßen mikewolf

      MOD-EDIT: Code in code-tags gesetzt!

      bahnuhr DJMarc75 2 Replies Last reply Reply Quote 0
      • bahnuhr
        bahnuhr Forum Testing Most Active @Mikewolf last edited by bahnuhr

        @mikewolf

        z.B. mit dem Befehl: replace

        Auszug aus meinem Script:

            var vText = getState('hm-rega.0.26463').val;
            vText = vText.replace(/%0A/g, '<br>');
            vText = vText.replace(/zur Zeit /g, '');
            vText = vText.replace(/ : /g, '  --> ');
            vText = vText.replace(/hat Kommunikationsfehler/g, 'Kommunikation');
            vText = vText.replace(/NEUE SERVICEMELDUNG<br>/g, '');
            vText = vText.replace(/NEUE Servicemeldung<br>/g, '');
            vText = vText.replace(/ALTE Servicemeldung<br>/g, '');
        

        Musste halt nur anpassen.

        paul53 1 Reply Last reply Reply Quote 0
        • DJMarc75
          DJMarc75 @Mikewolf last edited by

          @mikewolf so mal der Test:

          Screenshot 2023-12-04 110304.png

          und so könnte das Blockly aussehen:

          Screenshot 2023-12-04 111039.png

          haus-automatisierung 1 Reply Last reply Reply Quote 0
          • rantanplan
            rantanplan @Mikewolf last edited by

            @mikewolf Hallo, schaumal hier.
            Beliebige Zeichen tauschen

            Grüße

            1 Reply Last reply Reply Quote 0
            • haus-automatisierung
              haus-automatisierung Developer Most Active @DJMarc75 last edited by

              @djmarc75 sagte in teile eines Strings löschen:

              @mikewolf so mal der Test:

              Das erinnert mich daran, dass ich endlich mal ein "replace" Blockly-Baustein bauen wollte...

              1 Reply Last reply Reply Quote 2
              • paul53
                paul53 @bahnuhr last edited by paul53

                @bahnuhr sagte: Befehl: replace

                In Blockly: JS-Funktion mit Ergebnis delNL(text):

                return text.replace(/%0D%0A/g, ' ');
                
                1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active last edited by mickym

                  JSONATA hat auch eine replace Funktion. Also ziemlich einfach:

                  $replace($,"%0D%0A","")
                  

                  2e9030ff-4028-4114-86ce-b705c4eaefaf-image.png

                  Man muss ggf. alle Zeichen einzeln entfernen - da unten ein %D übrig bleibt.

                  In diesem Fall kann man mit regulären Ausdrücken arbeiten. Das letzte % Zeichen kannst herkömmlich entfernen.

                  $replace($,/%0[D,A]/," ")
                  

                  c82fa3ca-2afe-48d5-92d2-c13efcdfcc0f-image.png

                  <xml xmlns="https://developers.google.com/blockly/xml">
                   <variables>
                     <variable id="lku$YIe5iNvg1c$0Ej,z">text</variable>
                   </variables>
                   <block type="variables_set" id="q^;Tzd6P])!2Ju+.j/wF" x="62" y="62">
                     <field name="VAR" id="lku$YIe5iNvg1c$0Ej,z">text</field>
                     <value name="VALUE">
                       <block type="text" id="O@e_/F31;RviCA!?lb3I">
                         <field name="TEXT">NEUE Servicemeldung%0D%0AWC_EG : %0D%0ABatterie leer %0D%0A1 mal seit: 01.12.23 14:12 ( zuletzt: 03.12.23 20:42)%0D%0A%0D%</field>
                       </block>
                     </value>
                     <next>
                       <block type="debug" id="Y!eS#^GtWkYb,THn{e:d">
                         <field name="Severity">log</field>
                         <value name="TEXT">
                           <shadow type="text" id="V?o^g0U~oa.)*Av{9DPP">
                             <field name="TEXT">test</field>
                           </shadow>
                           <block type="variables_get" id="}U8w4^$stHd7zJOP3n6]">
                             <field name="VAR" id="lku$YIe5iNvg1c$0Ej,z">text</field>
                           </block>
                         </value>
                         <next>
                           <block type="debug" id="]Fs`E+^=9}Qb0}t2Vo*x">
                             <field name="Severity">log</field>
                             <value name="TEXT">
                               <shadow type="text" id="g|)?ne/LX`*IF1L=wF]1">
                                 <field name="TEXT">test</field>
                               </shadow>
                               <block type="convert_jsonata" id="U}c?}u3l}1e[KxJ7$brR">
                                 <value name="EXPRESSION">
                                   <shadow type="text" id="PfS=1@,8!FsD2#0E+yO+">
                                     <field name="TEXT">$replace($,/%0[D,A]/," ")</field>
                                   </shadow>
                                 </value>
                                 <value name="TARGET">
                                   <block type="variables_get" id="JFr5m:-%,($u[CH1G(pV">
                                     <field name="VAR" id="lku$YIe5iNvg1c$0Ej,z">text</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                  </xml>
                  

                  1 Reply Last reply Reply Quote 1
                  • Homoran
                    Homoran Global Moderator Administrators last edited by

                    kaum hat man mal was anderes zu tun, erledigt sich hier alles von selbst 🙂

                    Das nenn ich Community!

                    Dann kann ich mich ja zur Ruhe setzen

                    bahnuhr 1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active last edited by mickym

                      Um das letzte % Zeichen auch noch zu entfernen kannst Du den regulären Ausdruck wie folgt erweitern.

                      $replace($,/%0[D,A]|%$/," ")
                      

                      also den regulären Ausdruck auf

                      /%0[D,A]|%$/
                      

                      d604e7ee-8007-49e2-8b12-2d31fd6a7245-image.png

                      Vielleicht hast Du aber auch nur ein A vergessen aus dem String zu kopieren. 😉

                      1 Reply Last reply Reply Quote 0
                      • bahnuhr
                        bahnuhr Forum Testing Most Active @Homoran last edited by

                        @homoran sagte in teile eines Strings löschen:

                        Dann kann ich mich ja zur Ruhe setzen

                        abgelehnt 😉

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        623
                        Online

                        31.8k
                        Users

                        79.9k
                        Topics

                        1.3m
                        Posts

                        8
                        19
                        763
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo