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