本文介绍字典函数的语法规则,包括参数解释、函数示例等。
函数列表
函数 | 说明 |
---|---|
dct_make | 构建字典。 |
dct_update | 更新字典。 |
dct_delete | 删除字典值。 |
dct_keys | 获取字典关键字列表。 |
dct_values | 获取字典值列表。 |
dct_get | 获取字典中某关键字的值。 |
op_len | 获取字典的元素个数。 |
dct_make
构建字典。
-
函数格式
dct_make(key1, value1, key2, value2, ...)
说明 函数中关键字和值必须成对出现。 -
参数说明
参数名称 参数类型 是否必填 说明 key String 是 作为字典key的字符串。 value String 是 作为字典value的字符串。 -
返回结果
返回构建的字典。
-
函数示例
- 原始日志
content:test
- 加工规则
e_set("hello", dct_make("k1","v1","k2","v2"))
- 加工结果
content:test hello:{"k1": "v1", "k2": "v2"}
- 原始日志
dct_update
更新字典。
-
函数格式
dct_update(dict1, dict2)
-
参数说明
参数名称 参数类型 是否必填 说明 dict1 dict 是 需要被更新的目标字典。 dict2 dict 是 补充新的字典信息。 -
返回结果
返回更新的字典。
-
函数示例
- 原始日志
ctx: {"k1":"v1","k2":"v2"}
- 加工规则
e_set("hello", dct_update(v("ctx"), {"k3": "v3"}))
- 加工结果
ctx: {"k1":"v1","k2":"v2"} hello: {"k1": "v1", "k2": "v2", "k3": "v3"}
- 原始日志
dct_delete
删除字典键值对。
-
函数格式
dct_delete(dict, key1, key2, ...)
-
参数说明
参数名称 参数类型 是否必填 说明 dict dict 是 需要删除键值对的目标字典。 key1 String 是 要删除的键值对的关键字。 key2 String 否 要删除的键值对的关键字。 -
返回结果
返回删除后的字典。
-
函数示例
- 原始日志
ctx: {"k1":"v1","k2":"v2"}
- 加工规则
e_set("hello", dct_delete(v("ctx"), "k2"))
- 加工结果
ctx: {"k1":"v1","k2":"v2"} hello: {"k1":"v1"}
- 原始日志
dct_keys
获取字典关键字列表。
-
函数格式
dct_keys(dict)
-
参数说明
参数名称 参数类型 是否必填 说明 dict dict 是 字典数据。 -
返回结果
返回获取的字典关键词列表。
-
函数示例
- 原始日志
ctx: {"k1":"v1","k2":"v2"}
- 加工规则
e_set("hello", dct_keys(v("ctx")))
- 加工结果
ctx: {"k1":"v1","k2":"v2"} hello: ["k1","k2"]
- 原始日志
dct_values
获取字典值列表。
-
函数格式
dct_values(dict)
-
参数说明
参数名称 参数类型 是否必填 说明 dict dict 是 字典数据。 -
返回结果
返回获取的字典值列表。
-
函数示例
- 原始日志
ctx: {"k1":"v1","k2":"v2"}
- 加工规则
e_set("hello", dct_values(v("ctx")))
- 加工结果
ctx: {"k1":"v1","k2":"v2"} hello: ["v1","v2"]
- 原始日志
dct_get
获取字典中某关键字的值。
-
函数格式
dct_get(dict,key,default=None)
-
参数说明
参数名称 参数类型 是否必填 说明 dict dict 是 字典数据。 key String 是 要获取值的关键字。 default String 否 key不存在时,返回该值。 -
返回结果
返回字典关键字的值。
-
函数示例
- 示例1
- 原始日志
ctx: {"k1":"v1","k2":"v2"}
- 加工规则
e_set("hello", dct_get(v("ctx"), "k1"))
- 加工结果
ctx: {"k1":"v1","k2":"v2"} hello: v1
- 原始日志
- 示例2:没有找到key,返回默认值。
- 原始日志
ctx: {"k1":"v1","k2":"v2"}
- 加工规则
e_set("hello", dct_get(v("ctx"), "k3",default="123"))
- 加工结果
ctx: {"k1":"v1","k2":"v2"} hello: 123
- 原始日志
- 示例1