Go back to the English version of the documentationCLEM 运算符
CLEM 操作程序 (SPSS Modeler)
Last updated: 2024年10月07日
此页面列出了可用的 CLEM 语言运算符。
操作 | 注释 | 优先级(参阅下一节) |
---|---|---|
or |
在两个 CLEM 表达式之间使用。 如果其中一个表达式为真或两个表达式同时为真,则返回真值。 | 10 |
and |
在两个 CLEM 表达式之间使用。 如果两个表达式同时为真,则返回真值。 | 9 |
= |
用于任意两个可比项之间。 若 ITEM1 等于 ITEM2,则返回值为 true。 | 7 |
== |
与 = 相同。 |
7 |
/= |
用于任意两个可比项之间。 若 ITEM1 不 等于 ITEM2,则返回值为真。 | 7 |
/== |
与 /= 相同。 |
7 |
> |
用于任意两个可比项之间。 若 ITEM1 完全大于 ITEM2,则返回值为 true。 | 6 |
>= |
用于任意两个可比项之间。 若 ITEM1 大于或等于 ITEM2,则返回值为 true。 | 6 |
< |
用于任意两个可比项之间。 如果 ITEM1 严格小于 ITEM2,则返回真值。 | 6 |
<= |
用于任意两个可比项之间。 若 ITEM1 小于或等于 ITEM2,则返回值为 true。 | 6 |
&&=_0 |
用于两个整数之间。 相当于布尔表达式 INT1 && INT2 = 0。 | 6 |
&&/=_0 |
用于两个整数之间。 相当于布尔表达式 INT1 && INT2 /= 0。 | 6 |
+ |
将两个数字相加:NUM1 + NUM2。 | 5 |
>< |
并置两个字符串; 例如, STRING1 >< STRING2 。 |
5 |
- |
将两个数字相减:NUM1 - NUM2。 也可以用在一个数字之前:- NUM。 | 5 |
* |
用于将两个数字相乘:NUM1 * NUM2。 | 4 |
&& |
用于两个整数之间。 结果为 INT1 和 INT2 的位元“与”。 | 4 |
&&~~ |
用于两个整数之间。 结果为 INT1 的位元“与”和 INT2 的位元补码。 | 4 |
|| |
用于两个整数之间。 结果为 INT1 和 INT2 的位元“或”。 | 4 |
~~ |
用于整数前。 生成整数的位元补码。 | 4 |
||/& |
用于两个整数之间。 结果为 INT1 和 INT2 的位元“异或”。 | 4 |
INT1 << N |
用于两个整数之间。 产生整数向左偏移 N 个位置的位元模式。 | 4 |
INT1 >> N |
用于两个整数之间。 产生整数向右偏移 N 个位置的位元模式。 | 4 |
/ |
用于将两个数相除:NUM1 / NUM2。 | 4 |
** |
用于两个数字之间:BASE ** POWER。 返回 BASE 的 POWER 次幂。 | 3 |
rem |
用于两个整数之间:INT1 rem INT2。 返回余数,INT1 - (INT1 div INT2) * INT2。 | 2 |
div |
用于两个整数之间:INT1 div INT2。 执行整数除。 | 2 |
运算符优先级
优先级决定复杂表达式(尤其是含有不止一个中缀运算符且未加括号的表达式)的解析顺序。 例如
3 + 4 * 5
解析为 3 + (4 * 5)
而不是 (3 + 4) *
5
,因为相对先例指示要在 +
之前解析 *
。 CLEM 语言中的每个运算符都有与其关联的优先顺序值; 此值越小,它在解析列表中就越重要,这意味着它将比其他具有更大优先顺序值的运算符处理得更快。