本文介绍算术函数的语法规则,包括参数解释、函数示例等。
函数列表
如果值为负数,请使用op_neg(positive value)
函数,例如:要表示-1
,请使用op_neg(1)
。
类型 | 函数 | 说明 |
多值计算比较 | 对传入值进行求和操作。 | |
基础计算 | 对传入值进行绝对值操作。 | |
对传入值进行整除操作。 | ||
对传入值进行除法操作。 | ||
对值进行幂值计算操作。 | ||
对传入值进行乘法运算。 | ||
计算传入值的相反数。 | ||
对传入值进行模计算。 | ||
对传入值进行减法运算。 | ||
对传入值进行四舍五入操作。 | ||
数学计算 | 对传入值进行向上取整操作。 | |
以常数e为底的指数函数。 | ||
计算传入值的绝对值。 | ||
对传入值进行向下取整操作。 | ||
计算传入值的对数。 | ||
计算以10为基数的传入值的对数。 | ||
计算传入值的平方根。 | ||
将弧度转换为角度。 | ||
将角度转换为弧度。 | ||
计算传入值弧度的正弦值。 | ||
计算传入值弧度的余弦值。 | ||
计算传入值弧度的正切值。 | ||
计算传入值的反余弦弧度值。 | ||
计算传入值的反正弦弧度值。 | ||
计算传入值的反正切弧度值。 | ||
计算坐标值的反正切值。 | ||
计算传入值的反双曲正切值。 | ||
计算传入值得欧几里德范数。 | ||
数据常数pi。 | ||
数学常数e。 |
op_sum
对传入值进行求和操作。
函数格式
op_sum(value1, value2, ...)
参数说明
参数名称
参数类型
是否必填
说明
value1
数字或数字字符串
是
待计算的值。
value2
数字或数字字符串
是
待计算的值。
返回结果
返回多个传入值的求和结果。
函数示例
计算course_price和goods_price总价。
原始日志
course_price: 12 goods_price: 2
加工规则
e_set("account", op_sum(v("course_price"), v("goods_price")))
加工结果
course_price: 12 goods_price: 2 account: 14
op_abs
对传入值进行绝对值操作。
函数格式
op_abs(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回传入值的绝对值。
函数示例
函数示例
计算course_price值的绝对值。
原始日志
course_price: -4
加工规则
e_set("op_abs", op_abs(v("course_price")))
加工结果
course_price: -4 op_abs: 4
op_div_floor
对传入值进行整除操作。
函数格式
op_div_floor(value1, value2)
参数说明
参数名称
参数类型
是否必填
说明
value1
数字或数字字符串
是
待计算的值。
value2
数字或数字字符串
是
待计算的值。
返回结果
返回值1与值2整除的结果。
函数示例
根据course_price字段和count字段计算单价。
原始日志
course_price: 4 count: 2
加工规则
e_set("op_div_floor", op_div_floor(v("course_price"), v("count")))
加工结果
course_price: 4 count: 2 op_div_floor: 2
op_div_true
对传入值进行除法操作。
该函数支持自动转换数据类型,输入string或者int类型的数据即可。
函数格式
op_div_true(value1, value2)
参数说明
参数名称
参数类型
是否必填
说明
value1
数字字符串/ Number
是
待计算的值。
value2
数字字符串/ Number
是
待计算的值。
返回结果
返回值1/值2的结果。
函数示例
示例1:根据fruit_price和count字段计算单价。
原始日志
fruit_price: 9 count: 2
加工规则
e_set("op_div_true", op_div_true(v("fruit_price"), v("count")))
加工结果
fruit_price: 9 count: 2 op_div_true: 4.5
示例2:计算加速度(四舍五入),计算公式为
a = (one_speed-two_speed)/time
。原始日志
one_speed: 9 two_speed: 2 time: 3
加工规则
e_set("a", op_round(op_div_true(op_sub(v("one_speed"), v("two_speed")), v("time")), 2))
加工结果
a:2.33 one_speed:9 time:3 two_speed:2
op_pow
对值进行幂值计算操作。
函数格式
op_pow(value1, value2)
参数说明
参数名称
参数类型
是否必填
说明
value1
数字或数字字符串
是
待计算的值。
value2
数字或数字字符串
是
待计算的值。
返回结果
返回值1的值2次方的结果。
函数示例
计算course的pow次方的值。
原始日志
course: 100 pow: 2
加工规则
e_set("pow_course", op_pow(v("course"), v("pow")))
加工结果
course: 100 pow: 2 pow_course: 10000
op_mul
对传入值进行乘法运算。
函数格式
op_mul(value1, value2)
参数说明
参数名称
参数类型
是否必填
说明
value1
数字、字符串、元祖、列表等
是
待计算的值。
value2
数字
是
待计算的值。
返回结果
若值1和值2为数字,返回相乘的结果。
若值1和值2为字符串、元组、列表等,返回扩大倍数的原类型。
函数示例
示例1:根据course和price字段计算总价。
原始日志
course: 10 price: 23
加工规则
e_set("account", op_mul(ct_int(v("course")), ct_int(v("price"))))
加工结果
course: 10 price: 23 account: 230
示例2:将course字段扩大3倍。
原始日志
course: "abc"
加工规则
e_set("course", op_mul(v("course"), 3))
加工结果
course: "abcabcabc"
op_neg
计算传入值的相反数。
函数格式
op_neg(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回传入值的相反数。
函数示例
原始日志
course: -100
加工规则
e_set("account", op_neg(v("course_price")))
加工结果
course: -100 account: 100
op_mod
对传入值进行模计算。
函数格式
op_mod(value1, value2)
参数说明
参数名称
参数类型
是否必填
说明
value1
数字或数字字符串
是
待计算的值。
value2
数字或数字字符串
是
待计算的值。
返回结果
返回值1对值2取模的结果。
函数示例
原始日志
course: 4 count: 3
加工规则
e_set("op_mod", op_mod(v("course"), v("count")))
加工结果
course: 4 count: 3 op_mod: 1
op_sub
对传入值进行减法运算。
函数格式
op_sub(value1, value2)
参数说明
参数名称
参数类型
是否必填
说明
value1
数字或数字字符串
是
待计算的值。
value2
数字或数字字符串
是
待计算的值。
返回结果
返回值1减去值2的结果。
函数示例
计算count减count_apple的结果。
原始日志
count: 6 count_apple: 3
加工规则
e_set("sub_number", op_sub(v("count"),v("count_apple")))
加工结果
count: 6 count_apple: 3 sub_number: 3
op_round
对传入值进行四舍五入操作。
函数格式
op_round(value, number)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
number
数字
是
表示四舍五入后保留的小数点位数,默认值为0。
返回结果
返回传入值的四舍五入的结果。
函数示例
返回price小数点后1位数。
原始日志
price: 4.56
加工规则
e_set("round_price", op_round(v("price"),1))
加工结果
price: 4.56 round_price: 4.6
mat_ceil
对传入值进行向上取整操作。
函数格式
mat_ceil(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回大于或者等于指定值的最小整数。
函数示例
原始日志
price: 4.1
加工规则
e_set("mat_ceil", mat_ceil(v("price")))
加工结果
price: 4.1 mat_ceil: 5
mat_exp
以常数e为底的指数函数,返回e的次幂结果。
函数格式
mat_exp(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回e的次幂结果。
函数示例
原始日志
number: 2
加工规则
e_set("e_x", mat_exp(v("number")))
加工结果
number: 1 e_x: 7.38905609893065
mat_fabs
计算传入值的绝对值。
函数格式
mat_fabs(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回传入值的绝对值。
函数示例
原始日志
course_price: -10
加工规则
e_set("mat_fabs", mat_fabs(v("course_price")))
加工结果
course_price: -10 mat_fabs: 10.0
mat_floor
对传入值进行向下取整操作。
函数格式
mat_floor(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回小于或者等于指定值的最大整数。
函数示例
原始日志
course_price: 4.9
加工规则
e_set("mat_floor", mat_floor(v("course_price")))
加工结果
course_price: 4.9 mat_floor: 4
mat_log
计算传入值的对数。
函数格式
mat_log(value1,value2)
参数说明
参数名称
参数类型
是否必填
说明
value1
数字或数字字符串
是
待计算的值。
value2
数字或数字字符串
是
待计算的值。
返回结果
返回传入值的对数。
函数示例
原始日志
number1: 100 number2: 10
加工规则
e_set("mat_log", mat_log(v("number1"),v("number2")))
加工结果
number1: 100 number2: 10 mat_log: 2.0
mat_log10
计算以10为基数的传入值的对数。
函数格式
mat_log10(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回以10为基数的传入值的对数结果。
函数示例
原始日志
number: 100
加工规则
e_set("number2", mat_log10(v("number")))
加工结果
number: 100 numbe2: 2.0
mat_sqrt
计算传入值的平方根。
函数格式
mat_sqrt(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回传入值的平方根结果。
函数示例
原始日志
number1: 100
加工规则
e_set("sqrt_account", mat_sqrt(v("number1")))
加工结果
number1: 100 sqrt_account: 10.0
mat_degrees
将弧度转换为角度。
函数格式
mat_degrees(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回角度结果。
函数示例
原始日志
num: 1
加工规则
e_set("mat_degrees", mat_degrees(v("num")))
加工结果
num: 1 mat_degrees: 57.29577951308232
mat_radians
将角度转换为弧度。
函数格式
mat_radians(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回弧度结果。
函数示例
原始日志
rad: 30
加工规则
e_set("mat_radians", mat_radians(v("rad")))
加工结果
rad: 30 mat_radians: 0.5235987755982988
mat_sin
计算传入值弧度的正弦值。
函数格式
mat_sin(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回正弦值。
函数示例
原始日志
sin: 90
加工规则
e_set("mat_sin", mat_sin(v("sin")))
加工结果
sin: 90 mat_sin: 0.8939966636005579
mat_cos
计算传入值弧度的余弦值。
函数格式
mat_cos(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回余弦值。
函数示例
原始日志
cos: 30
加工规则
e_set("mat_cos", mat_cos(v("cos")))
加工结果
cos: 30 mat_cos: 0.15425144988758405
mat_tan
计算传入值弧度的正切值。
函数格式
mat_tan(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回正切值。
函数示例
原始日志
tan: 30
加工规则
e_set("mat_tan", mat_tan(v("tan")))
加工结果
tan: 30 mat_tan: 1.6197751905438615
mat_acos
计算传入值的反余弦弧度值。
函数格式
mat_acos(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回反余弦弧度值。
函数示例
原始日志
acos: 1
加工规则
e_set("mat_acos", mat_acos(v("acos")))
加工结果
acos: 1 mat_acos: 0.0
mat_asin
计算传入值的反正弦弧度值。
函数格式
mat_asin(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回反正弦弧度值。
函数示例
原始日志
asin: 1
加工规则
e_set("mat_asin", mat_asin(v("asin")))
加工结果
asin: 1 mat_asin: 1.5707963267948966
mat_atan
计算传入值的反正切弧度值。
函数格式
mat_atan(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
待计算的值。
返回结果
返回反正切弧度值。
函数示例
原始日志
atan: 1
加工规则
e_set("mat_atan", mat_atan(v("atan")))
加工结果
atan: 1 mat_atan: 0.7853981633974483
mat_atan2
计算坐标值的反正切值。
函数格式
mat_atan2(x,y)
参数说明
参数名称
参数类型
是否必填
说明
x
数字或数字字符串
是
X坐标值。
y
数字或数字字符串
是
Y坐标值。
返回结果
返回坐标值的反正切值。
函数示例
原始日志
atan1: 1 atan2: 2
加工规则
e_set("mat_atan2", mat_atan2(v("atan1"),v("atan2")))
加工结果
atan1: 1 atan2: 2 mat_atan2: 0.4636476090008061
mat_atanh
计算传入值的反双曲正切值。
函数格式
mat_atanh(value)
参数说明
参数名称
参数类型
是否必填
说明
value
数字或数字字符串
是
X坐标值。
返回结果
返回反双曲正切值。
函数示例
原始日志
atanh: 0.5
加工规则
e_set("mat_atanh", mat_atanh(v("atanh")))
加工结果
atanh:0.5 mat_atanh:0.5493061443340548
mat_hypot
计算传入值的欧几里德范数。
函数格式
mat_hypot(value1,value2)
参数说明
参数名称
参数类型
是否必填
说明
value1
数字或数字字符串
是
X坐标值。
value2
数字或数字字符串
是
Y坐标值。
返回结果
返回传入值的欧几里德范数。
函数示例
原始日志
hypot1: 1 hypot2: 2
加工规则
e_set("mat_hypot", mat_hypot(v("hypot1"),v("hypot2")))
加工结果
hypot1:1 hypot2:2 mat_hypot:2.23606797749979
MATH_PI
数据常数pi。
原始日志
a:2
加工规则
e_set("result", op_sum(v("a"), MATH_PI))
加工结果
a:2 result:5.141592653589793
MATCH_E
数据常数e。
原始日志
a:2
加工规则
e_set("result", op_sum(v("a"), MATCH_E))
加工结果
a:2 result:4.718281828459045