LabVIEWForum.de
Optionale Elemente bei "Scan from String" - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Optionale Elemente bei "Scan from String" (/Thread-Optionale-Elemente-bei-Scan-from-String)



Optionale Elemente bei "Scan from String" - DrPepper - 01.05.2006 18:33

Hallo,

ich habe ein Problem dabei, einen String so zu zerlegen, dass nach den optionalen Elementen "ch1: " bis "ch8: " gesucht wird, und die nachfolgende Zahl dann ausgegeben wird.
Es ist dabei möglich, dass ein String wie
"ch1: 32.6; ch2: 26.1; ch7: 32.6; ch8: 26.1; "
vorkommt, in dem die Kanäle 3 bis 6 fehlen. Die Outputs davon sollen dann "0" sein.

Das Problem besteht darin, dass er die Zeichenabfolge genauso wie im Format-String angegeben erwartet. Wenn also ein Kanal fehlt, wird mit Fehlermeldung abgebrochen...

Anbei habe ich mal den momentanen Stand angehängt.

Hat jemand vielleicht eine Idee, wie das zu realisieren ist?

Danke schonmal Smile


Optionale Elemente bei "Scan from String" - Lucki - 01.05.2006 19:56

Z.B so
Element 0 des Arrays ist Kanal 1 usw.


Optionale Elemente bei "Scan from String" - DrPepper - 01.05.2006 20:58

vielen dank für die hilfe. könnest du das programm möglicherweise auch noch als .vi hier posten? das wäre nett. danke!

edit:
hat sich erledigt, ich konnte es auch so nachbauen. Smile


Optionale Elemente bei "Scan from String" - Lucki - 02.05.2006 05:33

So leicht bin ich jetzt nicht mehr zu bremsen - hier die dritte, noch einfachere Variante.
Der Nachteil von all diesen Vorschlägen ist allerdings die extreme Empfindlichkeit gegenüber Formatändeungen - irgendwo ein Leerzeichen zuviel, und schon geht alles in die Hose.


Optionale Elemente bei "Scan from String" - DrPepper - 02.05.2006 11:51

Ich komme einfach nicht weiter:

Letztlich geht es darum, einen string, der so aussehen könnte:

Code:
*****New measuring. Delay time: 00.5 sec*****

ch1: 26.5; ch2: 25.7;

ch1: 26.4; ch2: 25.6;

ch1: 26.3; ch2: 25.6;

ch1: 26.3; ch2: 25.6;

ch1: 26.2; ch2: 25.5;

ch1: 32.6; ch2: 25.7;

ch1: 32.3; ch2: 25.7;

ch1: 31.9; ch2: 25.7;

*****New measuring. Delay time: 00.5 sec*****



ch1: 25.5; ch2: 25.0;

ch1: 25.5; ch2: 25.0;

ch1: 25.5; ch2: 25.4;

ch1: 25.5; ch2: 25.5;

ch1: 29.7;

*****New measuring. Delay time: 00.5 sec*****



ch1: 25.5; ch2: 25.0;

ch1: 25.5; ch2: 25.0;

ch1: 25.5; ch2: 25.4;

ch1: 25.5; ch2: 25.0;

ch1: 25.5; ch2: 25.0;

ch1: 25.5; ch2: 25.4;

ch1: 25.5; ch2: 25.0;

ch1: 25.5; ch2: 25.0;

ch1: 25.5; ch2: 25.4;

ch1: 25.5; ch2: 25.5;

ch1: 29.7;

so zu zerlegen, dass dabei ein dreidimensionales Array[i][j][k] herauskommt, welches wie folgt aufgebaut sein soll:
Jede Seite i enthält eine Tabelle mit acht Spalten und in den Zeilen sollen kanalweise dann die Messwerte stehen.
In einem zweiten Array[i] soll zu jeder Messung die Delayzeit abgelegt werden.

Prinzipiell müsste es ja ähnlich sein wie das vorherige Teilproblem...


Optionale Elemente bei "Scan from String" - Lucki - 03.05.2006 06:47

Zitat:Prinzipiell müsste es ja ähnlich sein wie das vorherige Teilproblem..
Kann schon sein, aber für mich ist jetzt der Unterschied, daß ich mit Deinen Formulierungskünsten nicht mehr klarkomme und mich deshalb diskret zurückziehe.
Zuerst ist die Rede von einem dreidimensionelem Array, dann von einer Tabelle, dann von einem "zweiten Array" - alles in einem einzigen Satz. Als Amateurpsychologe vermute ich mal, daß dabei immer ein und dasselbe gemeint ist, etwa nach der Formel
"Dreidimensionales Array = Tabelle + Zweites Array"
Mit so einer komischen Formel möchte ich aber nichts zu schaffen haben...


Optionale Elemente bei "Scan from String" - DrPepper - 03.05.2006 11:01

sorry, meinen letzt beitrag habe ich ziemlich hektisch verfasst.

mit dem dreidimensionalen array meinte ich ein array, welches drei dimensionen hat. mehr nicht.Wink
als ich von tabellen sprach meine ich damit bloß die letzten beiden indizes, welche man ja als reihen und spalten auffassen kann. der erste index des array ist dann die seitennummer, und auf jeder seite befindet sich eine neue "tabelle".
mir ist klar, dass es sich dabei nicht um eine wirkliche tabelle handelt. kann deshalb auch nachvollziehen, dass mein betrag überaus missverständlich formuliert war.
bei dem zweiten array geht es hingegen wirklich um ein eindimensionales array, dass die gleiche anzahl elemente hat, wie der erste index des großen arrays. darin sollen dann die delayzeiten aus den überschriften abgelegt werden.

Smile


Optionale Elemente bei "Scan from String" - Kvasir - 03.05.2006 15:37

Hab dir auf die schnelle eine Lösung geschrieben. Hatte nicht viel Zeit, weswegen sie wirklich nicht sonderlich schön programmiert ist, aber sie funktioniert zumindest.
Einzige Bedingung: So wie sie nun geschrieben ist, dürfen keine Leerzeilen zwischen der Headerzeile und den Messwerten kommen. Das sollte sich aber leicht umschreiben lassen.

Hoffe es hilft dir zumindest ein wenig weiter.

Grüße


Optionale Elemente bei "Scan from String" - DrPepper - 03.05.2006 16:26

DankeSmile

mittlerweile ist das problem gelöst.
Danke an alle!