2 个版本
0.1.2 | 2021年6月6日 |
---|---|
0.1.1 | 2021年6月6日 |
0.1.0 |
|
#1989 在 解析实现
24KB
520 行
AFRS
另一种规则语法,对JSON对象的简单快速模式匹配(将添加更多数据类型)。
规则语法
- 名称,规则的名称。
- 变量,一个或多个匹配字段中数据的变量。每个变量对象都需要有一个
name
字段和一个field
字段,name
字段需要匹配条件字符串中的变量名。field
字段必须匹配JSON对象中的字段名,遵循gjson
语法。最后,type
字段必须匹配下表中的变量类型之一。 - 条件,由变量名组成的字符串(例如
A and B | C
)。
变量
类型 | 其他规则字段 | 描述 |
---|---|---|
包含 | contains |
变量类型检查指定位置的字段值是否包含在 contains 字段中提供的值。 |
精确 | exact |
变量类型检查指定位置的字段值是否与在 exact 字段中提供的值完全匹配。 |
正则表达式 | regex |
regex 字段被读取并反序列化为一个 (Regex )https://docs.rs/regex/1.5.4/regex/struct.Regex.html 模式,然后与指定位置的字段值进行匹配。 |
比较 | ordering ,value |
ordering 字段被读取并反序列化为一个 (Ordering )https://doc.rust-lang.net.cn/std/cmp/enum.Ordering.html,value 被读取为一个双精度浮点数。将 value 与从 field 提取的值进行比较。 |
依赖项
~9.5MB
~125K SLoC