如何使用 Words 函數從字串中僅提取特定元素假設我有一個帶有公共分隔符號的字串,其形式為 bal1_bla2_blbla3_blabla4
我想建立一個僅包含「blbla3_blabla4」的新列,如何應用文字功能?
基礎資料分析與建模回覆:如何使用 Words 函數從字串中僅提取特定元素你好,
UI 中的一個解決方案是使用 Recode 來實現您的目標。
右鍵點選列標題->重新編碼->右鍵點選新值下的紅色三角形->進階->擷取段

您可以在日誌中找到 JSL 程式碼,它使用了單字函數:
/*:
// Recode column: Column 1 2
Local( {dt, col1},
dt = Data Table( "Test table" );
dt << Begin Data Update;
col1 = dt << New Column( dt:Column 1 );
col1 << Set Name( "Column 1 2" );
dt << Move Selected Columns( {col1}, after( dt:Column 1 ) );
For Each Row(
dt,
col1[] = Word(
[3 4],
dt:Column 1,
Get Whitespace Characters() ||
Get Punctuation Characters( Exclude Chars( "'-" ) ) || "_",
Unmatched( dt:Column 1 )
)
);
dt << End Data Update;
希望有幫助。
喬納斯
回覆:如何使用 Words 函數從字串中僅提取特定元素如果您想要最後兩個元素,那麼您可以使用帶有負索引的 Word(如果您知道字串開頭的確切位置,則可以使用正索引)
Names Default To Here(1);
str = "bal1_bla2_blbla3_blabla4";
res = Word([-2 -1], str, "_");
Show(res); // res = "blbla3_blabla4";