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 

Mehrere Strings teilen und in ein Array einfügen



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!

30.01.2013, 13:07
Beitrag #1

Atilla Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 65
Registriert seit: Oct 2012

11
2012
DE


Deutschland
Mehrere Strings teilen und in ein Array einfügen
Guten Tag,

folgende Situation liegt vor. Durch das Senden eines Bestimmten Befehls erhalten ich einen Rückgabestring. In diesem sind die Werte jeweils durch einen Unterstrich getrennt z.B. @2_1000_2000_23_234*. Wie zu erkennen ist, beginnt der String mit einem @ und einer Zahl zwischen 1 und 3 und endet mit einem *.

Ich habe schon geschafft die einzelnen Werte auszulesen. Vorher nur jede einzeln, d.h. Ich habe dreimal die selbe Schleife, nur mit unterschiedlichen Eingangsparamtern und unterschiedlicher Ausgabe in verschiedenen Arrays.
Nun möchte ich das aber alles zusammen fügen, da die Grundsyntax doch die selbe ist. Dabei habe ich mir gedacht, dass ich die Werte in ein 2D-Array schreibe und jede Zahl (1,2,3) einer Zeile(0,1,2) zugewiesen wird. (Jede Zahl, steht für einen gesonderten Befehl, mit eigenen Ausgabewerten. Stringlänge kann sich ebenfalls unterscheiden).
Dieses klappt aber bei mir nicht so richtig. Erschreibt alle Werte nur in eine Zeile und das hinter einander. Ich möchte aber, dass die alten Werte einfach überschrieben werden. Die anderen Zeilen werden gar nicht bearbeitet, bzw. nur für einen Bruchteil einer Sekunde, bis die Werte wieder in Zeile 0 überspringen.

Hier ist mein VI.

   

Habt ihr für mich einen Vorschlag, wie ich das ganze besser verarbeiten kann.

Wenn ich es schaffe, die Werte in die passenden Felder einzuträgen, dann kann ich die gut weiterverarbeiten. Ich möchte dann einfach die Werte in ein extra Array schreiben. Könnte man dann nicht auch ein 3D- Array machen? Aber das kommt erst danach.

gruß Atilla
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.01.2013, 13:15 (Dieser Beitrag wurde zuletzt bearbeitet: 30.01.2013 13:18 von Trinitatis.)
Beitrag #2

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Mehrere Strings teilen und in ein Array einfügen
Hallo Atilla,

sieh dir mal die Autoindizierung von Schleifen an - da kannst du dir einiges sparen und es wird deutlich effizienter.
Außerdem kannst du die Tiefstriche prima als Trennzeichen nehmen, um ein 1D-Array zu erzeugen.


Gruß, Marko

Nachtrag:
Wenn du deine Auswahl schon nicht mit Enums machst, dann gehören da mindestens keine float-Werte rein, aber das ist mehr oder weniger ´ne Schönheitskorrektur
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.01.2013, 13:28
Beitrag #3

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Mehrere Strings teilen und in ein Array einfügen

Akzeptierte Lösung

Mit Spreadsheet-String To Array kannst du schon mal wunderbar einen String in ein 1D-Array von Zahlen verwandeln:
   
Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.01.2013, 13:29
Beitrag #4

Atilla Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 65
Registriert seit: Oct 2012

11
2012
DE


Deutschland
RE: Mehrere Strings teilen und in ein Array einfügen
Hallo Marko,

danke erstmal für deine Antwort.
Also ich habe mir mal den Abschnitt zur Autoindizierung durchgelesen, aber ich weiß nicht wie du es meinst mit der effiziens. Wenn ich es richtig verstanden habe müsste bei mir die Autoindizierung aktiviert sein, so dass meine SChleife dann am Ende ein Array übergibt, so wie gewollt. Wenn ich sie deaktiviere bekomme ich nur einen Skalar, bzw einzelnen Wert zurück geliefert. Meine Schleife schnappt sich ja den String und zerhackt in genau an der Stelle wo der _ ist und gibt die einzelnen Werte schon alle Array zurück. Einzelne Anweisung klappen, mein Problem sind aber meherer Anweisung ohne, dass sie sich in die Quere kommen.

Wie meinst du das mit dem Trennzeichen?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.01.2013, 13:31
Beitrag #5

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Mehrere Strings teilen und in ein Array einfügen
siehe post von Jens
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.01.2013, 13:39
Beitrag #6

Atilla Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 65
Registriert seit: Oct 2012

11
2012
DE


Deutschland
RE: Mehrere Strings teilen und in ein Array einfügen
Ok, danke das funktionert sehr gut. Und ist deutlich übersichtlicher.

Eine Frage hätte ich noch. Wie kann ich nun die 3 Arrays zu einem machen. Also ich müsste doch dann die Arrays in ein weiteres Array einfügen, aber das müsste ich doch voher erstmal initialisieren. Die Strings werden nicht gleichzeitgeschrieben, sondern können vom benutzer entschieden werden, wann er welchen braucht.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.01.2013, 14:41
Beitrag #7

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Mehrere Strings teilen und in ein Array einfügen
Du kannst ein 2D-Array initialisieren und dann bei Bedarf die vorher zu wählende Zeile ersetzen. Dann solltest du alles haben, was du brauchst


Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.01.2013, 14:55 (Dieser Beitrag wurde zuletzt bearbeitet: 30.01.2013 15:06 von Atilla.)
Beitrag #8

Atilla Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 65
Registriert seit: Oct 2012

11
2012
DE


Deutschland
RE: Mehrere Strings teilen und in ein Array einfügen
Meinst du das so

   

Also zumindest werden nun die Arrays in die richtigen Zeilen eingetragen. Was fehlt, dass die Werte bestehen bleiben, falls ich meine Auswahl ändere. Die anderen Werte sollen sich nicht verändert.

Edit: Ok mit den Schieberegistern habe ich es nun geschafte (siehe Ausschnitt), dass sich zu einem bestimmten Moment alle 3 Arrays in dem Array aufhalten, doch irgendwie sitzt da noch der Wurm drinne, denn dieser Vorgang wird ja nun x-mal wiederholt, womit wenn ich z.b. den ersten eintrag auswähle, mein Array mit diesen Einträgen überschwemmt wird.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.01.2013, 15:05 (Dieser Beitrag wurde zuletzt bearbeitet: 30.01.2013 15:11 von Trinitatis.)
Beitrag #9

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Mehrere Strings teilen und in ein Array einfügen
Dein Attachment ist leider nicht zu sehen, jedenfalls bei mir
Da steht nur [attachment=43307]
Ich würde das 2D-Array initialisieren und über ein Schieberegister durch eine Schleife geben. Wenn du dann die Auswahl änderst, dann ersetzt du die entsprechende Zeile und übergibst dein 2D-Array wieder ans Schieberegister. Das ganze dann sinnvoller Weise über eine Eventstruktur - da kannst du dann auch gleich deine Auswahländerung abgreifen und ggf. als Arrayindex verwenden.


Gruß, Marko
Ja, ungefäir so, aber du kannst ja mal ne Sonde an dein I-Anschluss der Schleife setzen. Dann siehst du, dass das recht flott geht. Also Eventstruktur oder mindestens ein Wait reinSmile

Und brauchst du wirklich float-Werte?


Gruß, marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.01.2013, 15:18 (Dieser Beitrag wurde zuletzt bearbeitet: 30.01.2013 15:20 von Atilla.)
Beitrag #10

Atilla Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 65
Registriert seit: Oct 2012

11
2012
DE


Deutschland
RE: Mehrere Strings teilen und in ein Array einfügen
Nein float brauche ich nicht unbedingt. Ich habe einfach immer mit rechtsklick eine Konstante erstellt und das kam dabei raus. Ist das den schlimm?

Bei der Eventstruktur, dann wäre es doch besser wenn ich wieder normale Buttons mache, oder? Bleibe ich bei dem enum kann ich ja nur das Event "Werteänderung" auswählen, dabei unterscheide ich ja noch nicht zwischen der eigentlich Auswahl.
Ich bin noch etwas unerfahren mit Eventstrukturen.

Was meinst du mit Sonde?

Aber ich danke für schon mal für deine bisherige Hilfe


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


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Kein leeren sondern gar kein String in Array einfügen Philipp_O 3 4.078 25.08.2022 15:06
Letzter Beitrag: Kiesch
  Queuereferenz in Array einfügen - Fehler t.hipp 3 3.862 07.02.2018 17:32
Letzter Beitrag: t.hipp
  2D-SubArray frei in 3D- bzw. 2D-Array einfügen F.Bi 5 5.100 07.07.2015 13:24
Letzter Beitrag: F.Bi
  Werte In Array einfügen kadke 3 8.098 03.02.2015 12:45
Letzter Beitrag: GerdW
  Array in mehrere Subarrays unterteilen bnymn 6 5.130 21.10.2014 08:35
Letzter Beitrag: bnymn
  Einfügen eines Strings bei Tastendruck im aktiven Feld dali4u 2 3.858 21.08.2014 05:51
Letzter Beitrag: sccompu

Gehe zu: