You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在K语言单条规则中匹配KV对并删除对应Map键?

在K语言单条规则中删除Map键的实现方法

在K语言中,你可以在单条规则内完成匹配捕获Map键值对、更新其他cell并删除对应键的操作,核心是使用Map的删除式更新语法,无需额外指令或重复规则。

正确语法示例

你需要先为整个Map绑定一个变量,再通过Map变量[目标键 <-]的语法生成移除指定键后的新Map,替换原Map。修改后的规则如下:

rule <k> UPDATE Key:Id Val:Int => .K ... </k>
     <mycell> OriginalMap:Map => OriginalMap[Key <-] ... </mycell>
     <anothercell> X => X[Val <- 5] </anothercell>

关键说明

  • 之前的写法Key |-> (Val => undef)只是将值改为undef,并非真正删除键;而OriginalMap[Key <-]会直接从Map中移除该键值对。
  • 绑定整个Map变量(如OriginalMap:Map)是必要的,因为K的Map更新是基于完整Map实例生成新实例的不可变操作。
  • 这条规则同时完成三个操作:处理UPDATE指令、捕获Key和Val更新anothercell、删除mycell中对应的Map键。

内容的提问来源于stack exchange,提问作者tim0s42

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 16:11:01