Estrazione delle cifre prima e dopo la virgolaCIAO,
Ho difficoltà a estrarre le cifre da una stringa prima e dopo la virgola
Come posso estrarre 0,98 e 0,97 da una stringa?
string = "A_BD_CEEE:0.98,0.975620708";
first_number = Num( Regex( string, "(\d\d?\d?):", "\1" ) );
previsto fuori
primo_numero = 0,98
secondo_numero = 0,975
thanks</CODE></P>
<BR />
</LINGO-BODY>
<LINGO-LABS id="lingo-labs-377493" slang="en-US" mode="UPDATE">
<LINGO-LABEL>Ingegneria della qualità e dei processi</LINGO-LABEL>
</LINGO-LABS>
<LINGO-SUB id="lingo-sub-377515" slang="en-US" mode="NONE">Ri: estrazione delle cifre prima e dopo la virgola</LINGO-SUB><LINGO-BODY id="lingo-body-377515" slang="en-US" mode="NONE"><P>Ecco come lo farei</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);
Ri: estrazione delle cifre prima e dopo la virgolaSe i numeri non possono essere negativi, dovrebbe funzionare:
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);
Ri: estrazione delle cifre prima e dopo la virgolaOltre alla soluzione di @jthi ,
c'è una buona documentazione su regex:
https://www.jmp.com/support/help/en/16.0/jmp/regular-expressions.shtml#
Il problema del tuo approccio iniziale era che non esiste un numero prima:, solo dopo.
E devi includere il file. nella stringa per ottenere il primo numero. Vedere le modifiche di seguito.
Vale la pena imparare le espressioni regolari perché è davvero potente.
string = "A_BD_CEEE:0.98,0.975620708";
first_number = Num( Regex( string, ":(\d.\d?\d?)", "\1" ) );