回复:獲取表腳本的全部內容(包括註釋)?謝謝。這就是我所擔心的 - 沒有辦法以編程方式訪問評論,除非在評論方面使用某種醜陋的東西。
我確實想出了一個更好看的方法來完成這個。我將標頭註釋塊包含在 JSL Quote() 中,這會誘使 JSL 解釋器保留我的註釋塊而不是將其刪除。所以現在我可以讀取類別字段並相應地使用它。
這是我的示例腳本:
JSL Quote(
/* ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * **
* Script Name: my script name
* Script Category: <<MY category="">>
* Author: author name
* Rev Date: date
* Purpose: purpose
* * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * */
);
//this comment will be deleted
dt = Current Data Table();
scriptText = Char(dt << Get Table Property("my script name"));
scriptCategory = Char(Regex(scriptText,"\<\<([A-Za-z0-9 \/]*)\>\>", "\1"));
Write("\!n" || scriptText || "\!n");
Write("\!n" || scriptCategory || "\!n");</MY>並輸出到日誌:
JSL Quote(
/* ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * **
* Script Name: my script name
* Script Category: <<MY category="">>
* Author: author name
* Rev Date: date
* Purpose: purpose
* * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * */
); dt = Current Data Table(); scriptText = Char(dt << Get Table Property("my script name")); scriptCategory = Char(Regex(scriptText, "\<\<([A-Za-z0-9 \/]*)\>\>", "\1")); Write("
" || scriptText || "
"); Write("
" || scriptCategory || "
")
my category</MY>
回复:獲取表腳本的全部內容(包括註釋)?我所知道的解決這個問題的唯一方法是將每個評論放入一個虛擬文字字符串中
dt=current data table();
eval(parse("\[dt << new script("mysct",
comment="/**************************************/";
names default to here(1);
dt=current data table();
comment="// Here come more comments";
;]\")); 獲取表腳本的全部內容(包括註釋)?我正在嘗試建立一個系統來組織附加到我的數據表的所有 JSL 腳本。我想在每個腳本頂部的註釋中插入一個標題。它看起來像這樣:
/* ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * **
* Script Name: my script name
* Script Category: <<CATEGORY>>
* Author: author name
* Rev Date: date
* Purpose: purpose
* * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * */</CATEGORY>
在此標頭內,我將保留有關每個腳本的一些元數據。例如,用尖括號括起來的“腳本類別”字段。我希望能夠迭代腳本並根據此元數據操作它們。
我知道我可以獲得附加到我的數據表的所有腳本的列表,如下所示:
dt = Current Data Table();
scriptList = dt << Get Table Script Names;
然後我可以獲得如下腳本的內容:
scriptText = Char(dt << Get Table Property(scriptList[1]));
但是,scriptText 不包含任何註釋。標頭部分丟失,因此我無法訪問這些評論中包含的元數據。
有沒有辦法獲得滿的表格腳本的文本,包括註釋?
自動化和腳本編寫