JPath 表达式中的函数
某些基本函数可以在 JPath 表达式中使用,例如,将函数用作查询的一部分。
下表显示了可以在 JPath 表达式中使用的基本函数。
| 功能 | 描述 |
|---|---|
| 计数 (路径) | 返回特定路径表达式中的项目数。
|
| base64_encode(expr) | 返回特定表达式的 base64 编码的值。 |
| base64_decode(expr) | 返回特定表达式的 base64 已解码值。 |
| url_encode (表达式) | 返回特定表达式的 URL 编码的值。 |
| url_decode (表达式) | 返回特定表达式的 URL 已解码值。 |
| min (路径) | 返回特定路径表达式处数组中的最小值。 |
| max (路径) | 返回特定路径表达式处的数组中的最大值。 |
| time () | 返回自戳记以来的时间 (以毫秒计)。 |
| V2 中的新增功能 trunc (表达式) | 返回特定数字表达式的被截断值。 |
| V2 中的新增功能 圆形 (expr) | 返回特定数字表达式的四舍五入后的值。 |
| V2 中的新增功能 楼层 (expr) | 返回特定数字表达式的最低值。 |
| V2 中的新增功能 ceil (表达式) | 返回特定数字表达式的上限值。 |
| V2 中的新增功能 random_number () | 返回介于 0.0 和 1.0之间的随机浮点数。 |
| V2 中的新增功能 substring (expr , begin 和 end) | 返回特定表达式的子串。 |
| V2 中的新增功能 左 (expr , length) | 返回特定表达式的左部分。 |
| V2 中的新增功能 right (表达式,长度) | 将返回特定表达式的右侧部分。 |
| V2 中的新增功能 上限 (expr) | 返回特定表达式的大写的值。 |
| V2 中的新增功能 下 (expr) | 返回特定表达式的小写字母值。 |
| V2 中的新增功能 random_string (长度) | 返回由拉丁字母字符 (a-z , A-Z) 组成的随机字符串。 |
| V2 中的新增功能 空 (路径) | 如果特定路径表达式中的值为空,那么返回 true。 |
| V2 pad_left (expr , length , padValue) | 返回特定表达式的左填充的值。 |
| V2 pad_right (expr , length , padValue) | 返回特定表达式的右侧填充的值。 |
| V2 中的新增功能 范围 (开始,结束) | 以数组形式返回某个范围的数字。 |
| V2 中的新增功能 键 (路径) | 在特定路径表达式处返回对象的键。 |
| V2 中的新增功能 值 (路径) | 在特定路径表达式处返回对象的值。 |
| V2 中的新增功能 条目 (路径) | 在特定路径表达式处返回对象的条目。 |
下表显示了可以在 JPath 表达式中使用的基本函数的示例。
| 示例 | 描述 | 状态 | 表达式 | 结果 |
|---|---|---|---|---|
| 查询中的函数 | 将函数作为查询的一部分使用。 | { "array": [ { "id": 1, "timestamp": 1186978597
}, { "id": 2, "timestamp": 1286978597 }, { "id": 3,
"timestamp": 17586978597 } ] } |
/array[@timestamp > time()] |
[ { "id": 3, "timestamp": 17586978597 } ] |
| 查找时间戳记最大的事件 | 将 max () 函数与所生成的数字数组结合使用。 | { "array": [ { "id": 1, "timestamp": 1186978597
}, { "id": 2, "timestamp": 1286978597 }, { "id": 3,
"timestamp": 17586978597 } ] } |
max(/array/timestamp) |
17586978597 |