如何使用 JSL 從多個列名中刪除前綴?好吧,我想我不明白 JMP 文件。 缺少好的例子。
我正在嘗試重命名 JMP 檔案中的列,該檔案的列名稱使用前綴建立。 所有列名稱都以“pre”開頭,我想從列名稱中刪除該字串。
在循環中,我能夠使用 SHOW 語句提取並顯示所有列名稱。 我用了
舊名 = (列名(i));
其中 i 是循環變數。
看來我需要做的就是這樣
substr(舊名稱,4,長度(舊名稱)-3)
但是當我使用它時,我會遇到各種各樣的錯誤。 例如,長度函數不起作用。
我究竟做錯了什麼? 邏輯如此簡單,但 JMP 腳本語言卻讓我難受。
回覆:重新命名腳本中的列或同時使用 set 和 get 名稱:
回覆:重新命名腳本中的列或者這個單行解決方案:
回覆:重新命名腳本中的列或者你可以使用
OldName = Char(列名(i));
那你就不需要 Substr() 中的 Expr() 了。
沒有 Char() (或 expr) 就無法運作的原因是 Column name() 傳回一個名稱值,而不是引號的字串。 請參閱腳本指南中的更多資訊(在「取得列名稱」第 121 頁,JMP 9 下)
訊息編輯者:MS回覆:重新命名腳本中的列成功了! 謝謝!回覆:重新命名腳本中的列我不知道*為什麼*它有效,但如果你用 expr(OldName) 替換 OldName,它對我有用:
dt=當前資料表();
我=1;
舊名 = (列名(i));
newvar = Substr( expr(OldName), 4, 長度(expr(OldName)) - 3 );
顯示(newvar);