正規表示式將文字轉換為數字我在包含字串的列(本例中為設備)中列出了一個屬性。字串內部的某個位置是對數值的引用,我需要提取該數值並將其轉換為實際數字。
下面的公式有效,但似乎可以用更簡單的方式來完成。
Regex( Substr( :Device, 6 ), "K", "000", GLOBALREPLACE )
在這種情況下,任何 1K 的實例都會被 1000 取代。
再見
扳手頭
自動化和腳本編寫回覆:正規表示式將文字轉換為數字
這可以用更簡單的方式完成
你認為什麼事情這麼簡單?
回覆:正規表示式將文字轉換為數字雅爾莫
Num( Regex( :Device, "(\d+)K", "\1" ) ) * 1000
這?
再見
扳手頭
回覆:正規表示式將文字轉換為數字那麼……用那個……?這些對於您的數據和應用程式來說是高度特定的(例如通常“k”是千而不是“K”)
如果你必須將作為字串寫入的數字修復為數字,我想說從來沒有一個簡單的解決方案(很好的例子可能是excel,它只是假設一些東西並以不可逆轉的方式完全破壞你的數據)。
回覆:正規表示式將文字轉換為數字這是一個使用 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>回覆:正規表示式將文字轉換為數字雅爾莫
所有這些事情都有效,你是對的,我的問題非常具體,有時會發生在人們身上。如果我的資料中存在多個字母 K(在我的標準資料輸出中預設為大寫字母),我引用的解決方案將在工作中獲得一把扳手。
無論如何,謝謝
再見
扳手頭