首页 > 解决方案 > 计算列表中的值

问题描述

我正在设置一个 synesty 流,我需要知道 ArticleNumber 列表中有多少 ArticleNumber。

例如,这里是 ArticleNumber 列表

35361,35361,35361,205,09308943528,093089435281,093089435281

我想知道列表中有多少个 ArticleNumber "09308943528"

我试过了,?contains但它只是一个布尔值。

<#if MainArticleNumberList!?contains('${ArticleNumber!}')>true<#else>false</#if>

我希望输出编号取决于列表中有多少 ArticleNumber,在上面的示例中它将显示 1。

标签: freemarker

解决方案


如果您在 FreeMarker 2.3.29 之前,因此无法使用?filter,您仍然可以这样做:

<#assign cnt = 0>
<#list MainArticleNumberList as articleNumber>
  <#if articleNumber == '09308943528'>
    <#assign cnt++>
  </#if>
</#list>
${cnt}

推荐阅读