Regex konvertiert Text in ZahlenIn einer Spalte ist eine Eigenschaft aufgeführt (in diesem Fall „Gerät“), die eine Zeichenfolge enthält. Irgendwo in der Zeichenfolge befindet sich ein Verweis auf einen numerischen Wert, den ich extrahieren und in eine tatsächliche Zahl umwandeln muss.
Die folgende Formel funktioniert, es scheint jedoch, als könnte dies auch auf eine viel einfachere Weise erreicht werden.
Regex( Substr( :Device, 6 ), "K", "000", GLOBALREPLACE )
Jede Instanz von 1K wird in diesem Fall durch 1000 ersetzt.
Tschüss
SpannerHead
Automatisierung und SkriptingBetreff: Regex konvertiert Text in Zahlen
das könnte man viel einfacher machen
Was halten Sie für so viel einfacher?
Betreff: Regex konvertiert Text in ZahlenJarmo
Num( Regex( :Device, "(\d+)K", "\1" ) ) * 1000
Das?
Tschüss
SpannerHead
Betreff: Regex konvertiert Text in ZahlenAlso... das verwenden...? Diese sind sehr spezifisch für Ihre Daten und Anwendung (zum Beispiel wäre „k“ normalerweise Kilo und nicht „K“)
Wenn Sie als Zeichenfolgen geschriebene Zahlen in Zahlen umwandeln müssen, gibt es dafür meiner Meinung nach keine einfache Lösung (ein gutes Beispiel wäre Excel, das einfach etwas annimmt und Ihre Daten auf irreversible Weise vollständig ruiniert).
Betreff: Regex konvertiert Text in ZahlenHier ist ein einfaches Beispiel mit JSL
names default to here(1);
dt = New Table( "example",
Add Rows( 2 ),
New Column( "val", Character, "Nominal", Set Values( {"1K", "5K"} ) )
);
wait(5);
// Convert the values
for each row(
:val = Substitute(:val,"K","000")
);
wait(0);<BR /><BR />// Change column to numeric
dt:val << data type(numeric)<<MODELING type=""></MODELING>Betreff: Regex konvertiert Text in ZahlenJarmo
All diese Dinge funktionieren und Sie haben Recht, mein Problem ist sehr spezifisch, das kann Leuten manchmal passieren. Die Lösung, auf die ich verwiesen habe, gerät ins Wanken, wenn meine Daten mehr als einen Buchstaben K enthalten (in meiner Standarddatenausgabe ist dies standardmäßig ein Großbuchstabe).
Danke trotzdem
Tschüss
SpannerHead