1

如何使用地图从列表中删除特定元素(=多值属性)?例如,假设我想过滤掉给定列表中的所有 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

4

1 回答 1

0

可能不想在您的模板中过滤,但仍然可能是一个错误。

好的,我检查过了。这给出了 empty not null 所以它认为它是一个项目。ST 以相同的方式处理错误条件:空不为空。我认为您需要在模型中进行过滤。

于 2012-11-13T21:43:34.307 回答