Estrazione di una stringa particolare da una più lunga| Fonte | Temperatura |
| MZ_ES20-ATF786_D03-R_8x8-5hz_NoCG_0klux-nero3--5degc__20181105_203705 | -5 |
| MZ_ES20-ATF786_D03-R_8x8-5hz_NoCG_0klux-grey17--30degc__20181105_194659 | -30 |
| MZ_ES20-ATF786_D03-R_8x8-5hz_NoCG_0klux-white64-70degc__20181105_183920 | 70 |
Ciao,
Sto cercando di estrarre la temperatura dalla colonna "Sorgente" nella tabella JMP sopra usando JSL
Nella colonna Temperatura ho scritto i risultati che vorrei. Il mio problema è che il delimitatore tra il colore
(nero3,grigio17 e bianco64) e la temperatura è un trattino "-" ma a volte la temperatura è negativa che è anche "-"
Ho provato un certo numero di cose con la funzione Word ma finora senza alcun risultato. Qualsiasi aiuto con questo sarebbe apprezzato.
Grazie e saluti,
Davide
Re: Estrarre una stringa particolare da una più lungaGrazie, molto utile
Cordiali saluti,
Davide.
Re: Estrarre una stringa particolare da una più lunga
Ciao,
Grazie, funziona e molto succinto!
Cordiali saluti,
Davide.Re: Estrarre una stringa particolare da una più lungaEcco una formula che credo farà il trucco
degCPosition = Contains( :Source, "degc__" ) - 1;
i = degCPosition;
While( Substr( :Source, i, 1 ) != "-", i-- );
If( Substr( :Source, i - 1, 1 ) == "-",
result = Num( Substr( :Source, i, (degCPosition - i) + 1 ) ),
result = Num( Substr( :Source, i + 1, degCPosition - i ) )
);
result;

Re: Estrarre una stringa particolare da una più lungaQuesto problema è facilmente risolto dalla funzione di stringa Regex().Prova questo:
Num( Regex( :Source, "-(-?\d\d?\d?)degc", "\1" ) )