计算Coldfusion中的名字

Smo*_*osh 1 coldfusion list counting

我有一个清单:

  • 麦克风
  • 彼得
  • 马歇尔
  • 麦克风
  • 彼得
  • 麦克风
  • 彼得
  • 玛丽
  • 约翰
  • 彼得
  • 马歇尔
  • 麦克风
  • 史蒂芬

而且我想计算其中一个名字出现在该列表中的频率.

喜欢:

  • 迈克= 4
  • 彼得= 4
  • 马歇尔= 2
  • 玛丽= 1
  • 约翰= 1
  • 史蒂文= 1

我怎么能这样做(顺便说一下我真的很新,所以这是一个初学者的问题)

Beg*_*ner 9

您可以loop通过list,并可以使用创建的结构names as key和它们count as values是这样的:

<cfset names = "Mike,Peter,Marshall,Mike,Peter,Mike,Peter,Marie,John,Peter,Marshall,Mike,Steven">
<cfset nameCount = structNew()>
<cfloop list="#names#" index="currentName" delimiters=",">
  <cfif structKeyExists(nameCount, currentName)>
    <cfset nameCount[currentName] += 1>
  <cfelse>
    <cfset nameCount[currentName] = 1>
  </cfif>
</cfloop>
Run Code Online (Sandbox Code Playgroud)