参见https://knowledge.亚搏在线safe.com/questions/68957/get-the-last-index-of-an-array.html
我现在知道如何在一条语句中访问列表中的最后一个元素,这要感谢@大卫·R对这个问题的回答。所以我不再需要对列表元素进行计数,然后在得到列表中最后一个元素的值之前从中减去1。然而,在了解如何做到这一点的过程中,我发现listindexer允许您从列表的末尾开始指定一个负数。
我还没有一个场景需要从列表末尾获取(例如)第三个元素,但是这些场景一定会在某个时刻出现!所以我建议允许负数,例如_列表-3从列表的结尾开始,而不是从开始。
你好,
我知道论坛上有很多关于这个的问题,但是我找不到如何正确使用它。所以,为了从列表中提取我的属性,我在聚合器之后使用glistindexer(如果我聚合了10行,则使用10个listindexer)向我的属性添加前缀(使用前缀的索引0,例如x0 eu等)。这很有效,但我认为这不是一个好的方法(尤其是如果数据更改,我需要添加更多的listindexer)。
是否可以用循环或其他方法(一种动态的提取方法)来完成这项工作?
P.S:我有很多属性,所以暴露元素会更复杂。
谢谢
是否可以在attributeCreator中使用负列表索引?如果不可能,为什么不?是否有技术原因或只是没有实施?我应该为它创造一个想法吗?
解决方法是使用ListIndexer,和属性名称,但这不是真正的直觉,也不是很快。与FME中的大多数事情不同。
你好,使用ListIndexer时,可以添加后缀,我想有一个重命名新属性的选项,而不是为每个属性添加一个属性名称…
我使用LineJoiner根据属性Street将街道段合并在一起。每个路段都有街道,从\街到\街和一个序列。我已经在LineJoiner Transformer之前按顺序订购了它们,现在我想从_Street和to_Street中提取合并段。我把0路从街改为街,这很好。但是如何告诉列表元素选择是最后一个元素呢?它不需要-1或任何非数字或元素计数。还有别的办法吗?理想情况下,我希望它是一个简单的东西,像道路最大到街。