LabVIEWForum.de - In String nach Bestandteil suchen

LabVIEWForum.de

Normale Version: In String nach Bestandteil suchen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo,

ich möchte in dem VI "Vergleich_der_Pseudocodes" überprüfen, ob in einem aktuellen Befehl ein Bestandteil des vorhergehenden (letzten) Befehls enthalten ist und den dann nicht mitsenden. Ist ein Befehl anders als im vorhergehenden Befehl, dann soll er mitgesendet werden.
Bei "Schutzkopplung:OFF" funktioniert das, bei Kanal1:.......... aber nicht. Pccrash Ich verstehe aber nicht wieso. Wacko
Könnte mir da evtl. jemand weiterhelfen und mal drüberschauen?
Die VIs (Version 8.0) habe ich in den Anhang gepackt.

Gruß Markus

Edit: Der Separator ist immer das "!"
Es liegt wohl an dem "+" bei 9.9E+37. Aber wieso das denn? Blink

' schrieb:Hallo,

ich möchte in dem VI "Vergleich_der_Pseudocodes" überprüfen, ob in einem aktuellen Befehl ein Bestandteil des vorhergehenden (letzten) Befehls enthalten ist und den dann nicht mitsenden. Ist ein Befehl anders als im vorhergehenden Befehl, dann soll er mitgesendet werden.
Bei "Schutzkopplung:OFF" funktioniert das, bei Kanal1:.......... aber nicht. Pccrash Ich verstehe aber nicht wieso. Wacko
Könnte mir da evtl. jemand weiterhelfen und mal drüberschauen?
Die VIs (Version 8.0) habe ich in den Anhang gepackt.

Gruß Markus

Edit: Der Separator ist immer das "!"
Hi,

hab noch net so ganz gerafft, was du da machen willst...allerdings hab ich ne kleine Anmerkung: Das "Tools_String_To_Array.vi" hättest du dir nicht programmieren müssen, das erledigt das LV-VI "Spreadsheet string to array" nämlich haargenauso...

Mal sehen...

A.
Hi Markus,

du solltest evtl. mal mit einfacheren Befehlen testen, sonst verliert man irgendwie den Überblick! Ich hab das mal gemacht, siehe Beispiel. Das funktioniert doch...dann muss es mit anderen Befehlen auch gehen! Was funktioniert denn nicht?

Gruss
Achim

[attachment=4057]
Hallo,

mit einfacheren Befehlen habe ich das getestet und da ging es ja. Bei meinen komplexeren Befehlen gab es kleinere Probleme. Was mir aufgefallen ist, ist dass das "+" (9.9E+37) wohl dafür verantwortlich ist, dass die Funktion "Match Regular Expression" den String der an "Regular Expression" anliegt, nicht in dem "Input String" findet. Hoffentlich wurde es deutlicher. Smile

Gruß Markus

Edit: An regular Expression darf offensichtlich kein "+" anliegen, sonst kriege ich auch die Fehlermeldung "Error -4609 occurred at Error occurred during regular expression match. - LabVIEW: There is nothing to repeat"


' schrieb:Hi Markus,

du solltest evtl. mal mit einfacheren Befehlen testen, sonst verliert man irgendwie den Überblick! Ich hab das mal gemacht, siehe Beispiel. Das funktioniert doch...dann muss es mit anderen Befehlen auch gehen! Was funktioniert denn nicht?

Gruss
Achim

[attachment=30194:attachment]
' schrieb:Edit: Der Separator ist immer das "!"
Das stimmt doch gar nicht. Es gibt nur einen einzigen "!"-Separator in Deinen Befehlen, und zwar hinter "Schutzkopplung:OFF". Hast Du das übersehen oder bin ich hier selbst irre?
Ganz am Schluss ist noch einer, wobei es dann ja kein Separator mehr ist. Big Grin
Jedenfalls kommt die Funktion mit dem "+" nicht klar. Ich werde noch zum Elch. PccrashGrrr
Ich weiß nicht, wie ich das umgehen kann.

Gruß Markus

' schrieb:Das stimmt doch gar nicht. Es gibt nur einen einzigen "!"-Separator in Deinen Befehlen, und zwar hinter "Schutzkopplung:OFF". Hast Du das übersehen oder bin ich hier selbst irre?
Hallo,

auch hier klappt es nicht, wenn ich z.B. " Schutzkopplung:OFF!Spannungsanstieg:9.9E+37! " bei aktuellem und letztem Befehl eingebe. Lasse ich das "+" weg, klappt es. Ist das bei Dir auch so?? Bei gesendetem Befehl müsste es in dem Fall ja leer bleiben. BlinkWackoPccrash

Gruß Markus

' schrieb:Hi Markus,

du solltest evtl. mal mit einfacheren Befehlen testen, sonst verliert man irgendwie den Überblick! Ich hab das mal gemacht, siehe Beispiel. Das funktioniert doch...dann muss es mit anderen Befehlen auch gehen! Was funktioniert denn nicht?

Gruss
Achim

[attachment=30194:attachment]
Hi,

ich komm grad net dazu...ich glaube aber, dass es daran liegt, dass der zu suchende String evtl. länger ist als der eigentliche Befehl...der Suchstring wird dann als komplett-Wert gesucht und natürlich nicht gefunden...muss nochmal schauen...wird heut vermutlich nix mehr...

A.
' schrieb:Jedenfalls kommt die Funktion mit dem "+" nicht klar.
Den ganzen Aufwand, der Dir dann die Schwierigkeiten bringt, verstehe ich sowieso nicht:
So würde ich es machen:
a) Die zu vergleichenden Strings Arrays umwandeln. (Dein Sub-Vi ist überflüssig, die vorhandene Funktion"Tabellenstring nach Array" funktioniert auch mit einem ein-elementigen Array, mit einem eindimensionelen Array als Ergebnis.)
b) die Elemente werden miteinander verglichen. (ich gehe davon aus, daß die Anzahl und Reihenfolge (aktuell-letzter) immer gleich ist und daß deshalb die ganze Suchfunktion, die Dir die Schwierigkeiten bringt, ebenso überflüssig ist. Ist das so?)
c) gleiche Elemente werden nicht in den String aufgenommen, so wie Du es bisher schon hattest.
Seiten: 1 2
Referenz-URLs