如何使用地图从列表中删除特定元素(=多值属性)?例如,假设我想过滤掉给定列表中的所有 b:
<["a", "b", "c", "b"]: {<table.(it)>}; separator=",">
table ::= ["b":, default: key]
期望的结果是“a,c”,但实际结果是“a,,c”空值。所以他们也不会使用 strip() 函数。
所以问题是,是否可以通过稍微修改上面的代码来使用地图过滤列表?
更新
我找到了一种解决方法:
filter(it) ::= "<if(it)><it><endif>"
<["a", "b", "c", "b"]: {<table.(it)>}: filter(); separator=",">
这给出了我想要的结果:a,c