INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

XML auswerten mit Regular Expressions oder doch Scan from String



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

02.04.2020, 09:07 (Dieser Beitrag wurde zuletzt bearbeitet: 02.04.2020 09:19 von GerdW.)
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.427
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: XML auswerten mit Regular Expressions oder doch Scan from String
Hallo Timo,

Zitat:Kann man Platzhalter in 'Scan From String' einbauen, ohne diese als Ausgang zu haben oder muss da wirklich jedes Zeichen in einem Block abgefragt werden?
ScanFromString erwartet einen exakten Formatstring, Platzhalter sind da schwierig.
Entweder benutzt du für einen String wie "123 Wort 4.567" also ein Format wie "%d %s %.;%f" - oder "123 Wort %.;%f" wenn du nur den Floatwert benötigst…

Zitat:Gibt es eine Hilfe (zB Website, Tool) für Regular Expressions?
Jede Menge, einfach mal mit deiner bevorzugten Suchmaschine suchen.
http://www.regex101.com
https://rubular.com/

Zitat:Es gibt bei manchen Parametern (und bei manchen Geraete) gelegentlich ein Liste (Array) das wird aber nur aufgeführt, wenn das Gerät/ der Parameter das auch benötigt. In der XML ist das sonst einfach leer. Wie fragt man in 'Regular Expressions' oder/und 'Scan from String' ein Array ab?
Indem man sich ein subVI baut, welches das komplette Array-Tag als Input bekommt und darin in einer Schleife alle Arrayelemente scannt und in ein Stringarray überführt.

Tipp:
Ich habe mir eine eigene Bibliothek geschrieben, die XML-ähnliche Dateien erzeugt (zum einfacheren Speichern/Verwalten von Parametern). Da habe ich eine Funktion, die nach einem Tag in der Art von <TAG>WERT</TAG> sucht und mir den WERT zurückgibt. Dank Polymorphie und Angabe eines erwarteten Datentyps bekomme ich den WERT auch im erwarteten Datentyp zurück. So sieht die Kernfunktion aus:
   

Dieser WERT kann wiederum andere Tags enthalten, wie in deinem Beispiel:
Code:
<Geraet>
   <Geraetecode>%[^<]</Geraetecode>
   <Geraetename>%[^<]</Geraetename>
   <Geraeteparameter>%[^G]Geraeteparameter>
   <ServiceModus>%[^<]</ServiceModus>
</Geraet>
Ich rufe diese Funktion also mit "Geraet" auf, mit dem gelieferten Wert dann noch mal mit Geraetecode, Geraetename und ServiceModus…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
RE: XML auswerten mit Regular Expressions oder doch Scan from String - GerdW - 02.04.2020 09:07

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  String in Datei (txt oder csv) Katsching 15 14.140 21.12.2011 11:07
Letzter Beitrag: Katsching
  Leeres und doch gefülltes Array von Cluster HaDa 12 10.600 22.11.2010 09:20
Letzter Beitrag: HaDa
  String durchsuchen mit boolean expressions holistic 1 4.259 08.11.2010 15:45
Letzter Beitrag: unicorn

Gehe zu: