Extrahieren der Ziffern vor und nach dem KommaHallo,
Ich habe Schwierigkeiten, Ziffern aus einer Zeichenkette vor und nach dem Komma zu extrahieren.
Wie kann ich 0,98 und 0,97 aus einer Zeichenkette extrahieren?
string = "A_BD_CEEE:0.98,0.975620708";
first_number = Num( Regex( string, "(\d\d?\d?):", "\1" ) );
erwartet
erste_Zahl = 0,98
zweite_Zahl = 0,975
thanks</CODE></P>
<BR />
</LINGO-BODY>
<LINGO-LABS id="lingo-labs-377493" slang="en-US" mode="UPDATE">
<LINGO-LABEL>Qualitäts- und Prozessentwicklung</LINGO-LABEL>
</LINGO-LABS>
<LINGO-SUB id="lingo-sub-377515" slang="en-US" mode="NONE">Betreff: Ziffern vor und nach dem Komma extrahieren</LINGO-SUB><LINGO-BODY id="lingo-body-377515" slang="en-US" mode="NONE"><P>Hier ist, wie ich es machen würde</P>
<PRE><CODE class=" language-jsl">names default to here(1);
string = "A_BD_CEEE:0.98,0.975620708";
first number=num(word(2,string,":,"));
second number = round(num(word(3,string,":,")),3);
Betreff: Ziffern vor und nach dem Komma extrahierenWenn die Zahlen nicht negativ sein können, sollte dies funktionieren:
Names Default To Here(1);
string = "A_BD_CEEE:0.98,0.975620708";
numString = Regex Match(string, "(\d+.\d*),(\d+.\d*)");
first_number = Num(numString[2]);
second_number = Num(numString[3]);
Show(first_number, second_number);
Betreff: Ziffern vor und nach dem Komma extrahierenNeben der Lösung von @jthi ,
Es gibt eine ziemlich gute Dokumentation zu Regex:
https://www.jmp.com/support/help/en/16.0/jmp/regular-expressions.shtml#
Das Problem Ihres anfänglichen Ansatzes war, dass es vorher keine Nummer gibt: nur danach.
Und Sie müssen die einschließen. in die Zeichenfolge, um die erste Zahl zu erhalten. Siehe Änderungen unten.
Regex ist es wert, gelernt zu werden, weil es wirklich mächtig ist.
string = "A_BD_CEEE:0.98,0.975620708";
first_number = Num( Regex( string, ":(\d.\d?\d?)", "\1" ) );