Extrahieren einer Zahl aus einem TextfeldIch habe eine Spalte mit Textnotizen, die von Technikern eingegeben wurden. Sie geben die Systemnutzungsstunden ein, die ich in eine eigene Spalte extrahieren muss. Glücklicherweise sind die Daten ziemlich konsistent, und so konnte ich die Informationen mit Regex Match () abrufen, aber die Auswahl des letzten Werts stolpert über mich.
Regex Match( :diagnosis, "(ys.+sage: ?)(\d{1,5})\n" );Wie extrahiere ich die Systemnutzungsstunden effektiv aus dem Textblock?
Der Beispieltext sieht folgendermaßen aus:
UDI # 123456789123456789123456789456123
Gerät erhalten, fehlende Abdeckung.
Hauptgrund für den Service: xxxxxxxxxx
Systemnutzung: 2372
System PM fällig in: 7627
xxx Verwendung: 120
JJJ Verwendung: 208
AnalytikDatentabelleBetreff: Extrahieren einer Zahl aus einem TextfeldWenn die Daten konsistent genug sind, können Sie dies ohne Regex tun, indem Sie Substr mit Enthalten (und Länge) verwenden.
Names Default To Here(1);
text ="UDI# 123456789123456789123456789456123
Device received, missing cover.
Major Reason For Service: xxxxxxxxxx
System usage: 2372
System PM due in: 7627
xxx usage: 120
yyy usage: 208";
stringToSearch = "System usage: ";
sysUsage = num(Substr(text, Contains(text, stringToSearch) + length(stringToSearch), 4));
show(sysUsage);
Betreff: Extrahieren einer Zahl aus einem TextfeldHier ist eine Lösung, die JSL-Funktionen verwendet, um die Systemnutzung zu extrahieren
Num( Word( 1, Substr( :Diagnosis, Contains( :Diagnosis, "System usage:" ) + 14 ), "\!n" ) )

Ich habe die obige Datentabelle angehängt