String überprüfen, ob ein Zeichen oder Zahl enthalten ist.
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!
05.09.2007, 10:39 (Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2007 21:51 von jg.)
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
String überprüfen, ob ein Zeichen oder Zahl enthalten ist.
Hallo zusammen,
wie kann ich am geschicktesten überprüfen, ob in einem String entweder ein "S" in Kombination mit einer 2 stelligen Zahl (S00 - S99) drinsteht, oder aber eine Zahl (Double).
Der String soll auch nicht mehrere "S" haben und das S darf nur an der ersten Stelle sein.
Also nochmal kurz:
String darf entweder S00 bis S99 enthalten, oder eine (Double-)Zahl.
Mein VI habe ich mal angehängt und versuche es natürlich auch weiter.....
Gruß Markus
(VI LV 8.0)
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
String überprüfen, ob ein Zeichen oder Zahl enthalten ist.
Hi Markus,
evtl. so: Mit "Search/Split String" den String aufteilen und mit "=" gucken, ob das erste Zeichen ein "S" ist...oder gleich nach nem "S" im String suchen (ebenfalls mit "Search/Split String" und bei "gefunden" (offset <> -1) die beiden nächsten Zeichen nach dem "S" extrahieren. Wenn "nicht gefunden" (offset = -1) die Zahl nach Double wandeln
Gruss
Achim
"Is there some mightier sage, of whom we have yet to learn?"
"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
05.09.2007, 12:05 (Dieser Beitrag wurde zuletzt bearbeitet: 05.09.2007 12:10 von eg.)
String überprüfen, ob ein Zeichen oder Zahl enthalten ist.
Ich würde zuerst versuchen mit Scan From String DBL zu scannen und wenn das VI einen Fehler zurückgibt, dann ist es halt keine Zahl, weiterhin kannst du deinen String auseinandernehmen.
ABER, wenn dein String immer mit einer "S" anfängt, dann würde ich doch nach Achims Vorschlag vorgehen.
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
String überprüfen, ob ein Zeichen oder Zahl enthalten ist.
Danke Euch beiden,..... Ich mach' mich mal ans Umsetzen. Wenn ich fertig bin, dann poste ich es....
Gruß Markus
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
05.09.2007, 13:47 (Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2007 21:52 von jg.)
Ich würde mich ja gerne mit Dir geistig duellieren, aber ich sehe Du bist unbewaffnet.
--------------------
Der Vorteil von Klugheit ist, dass man sich dumm stellen kann. Das Gegenteil ist schwieriger.
--------------------
Damit immer mehr immer weniger tun können, müssen immer weniger immer mehr tun.
05.09.2007, 13:58 (Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2007 21:52 von jg.)
PS:
Ich sehe gerade, dass nur Double Werte zugelassen sein sollen, ich denke damit sind Fließkommazahlen gemeint...
Mit [0-9]*[,]+[0-9]* als RegExp muss vor und nach dem Komma eine Zahl stehen... Somit werden auch "." ignoriert
Ich würde mich ja gerne mit Dir geistig duellieren, aber ich sehe Du bist unbewaffnet.
--------------------
Der Vorteil von Klugheit ist, dass man sich dumm stellen kann. Das Gegenteil ist schwieriger.
--------------------
Damit immer mehr immer weniger tun können, müssen immer weniger immer mehr tun.
Anzeige
05.09.2007, 16:19 (Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2007 21:53 von jg.)
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
String überprüfen, ob ein Zeichen oder Zahl enthalten ist.
Auch Dir Danke Benjamin,
aber ich musste doch etwas umfangreicher programmieren, so dass auch keine andere Zeichen als S an der ersten Stelle und Zahlen eingegeben werden können, außer max. ein (!) Komma bei den Zahlen. Außerdem wird ein z.B. ein eingebenes s1 automatisch zu S01.
Hier ist mein Workaround, falls es jemand interessiert. Am Eingang wird in der Praxis das gleiche Array angeschlossen wie am Ausgang (lokale Variablen), d.h. gibt man falsche Werte ein, so werden sie gleich im selben Array verbessert und nicht in einem anderen......
Gruß Markus
(VI LV 8.0)
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------