我有一個表,有 2 列 Term 和 Multiply,看起來像這樣:

我希望能夠閱讀“術語”列並檢查以下內容:
1) 如果“術語”列中的術語未乘以任何內容(如上表中的名稱、地點、動物和事物),則將“乘”列中的值乘以 2。
2) 如果“Term”列中的項乘以任何其他項(如上表中的 Place*Thing),則將“乘”列中的值乘以 2。
3) 如果“Term”列中的項與自身相乘(如上表中的“Name*Name”和“Animal*Animal”),則保持“Multiply”列中的值不變。
結果表如下所示:

這可以用jsl來完成嗎? 謝謝
也許是這樣的:
New Table( "Multiply",
Add Rows( 8 ),
New Column( "Term", Character, "Nominal",
Set Values( {"Name", "Place", "Animal", "Thing", "Name*Name", "Place*Thing",
"Animal", "Animal*Animal"} )
),
New Column( "Multiply", Numeric, "Continuous",
Format( "Best", 12 ),
Set Values( [0.43, 0.5567, 0.056, 0.236, 0.15503, 0.44479, 0.7789, 0.22754] )
),
New Column( "Result",
Expression,
"None",
Formula(
mtch = Regex Match( :Term, "([^*]*)\*([^*]*)" );
If(
N Items( mtch ) == 0, :Multiply * 2,
N Items( mtch ) == 3,
If( mtch[2] == mtch[3],
:Multiply,
:Multiply * 2
)
);
)
)
)