Как избавиться от последней запятой при создании списка? - PullRequest
2 голосов
/ 10 февраля 2012

Я пишу веб-сервис в ColdFusion.Проблема в том, что я не могу понять, как избавиться от запятой после последнего элемента.Мой код выглядит следующим образом:

<cfoutput query="Attachments">
    #url#,
</cfoutput>

Который производит вывод, подобный этому (обратите внимание на запятую)

url1,url2,url3, 

Как мне избавиться от запятой и создать ее вместо этого?

url1,url2,url3

Ответы [ 2 ]

8 голосов
/ 10 февраля 2012

Это простой метод:

<cfoutput>#ValueList(Attachments.url)#</cfoutput>
0 голосов
/ 10 февраля 2012

Ответ Джейка - это то, что нужно в данном конкретном случае.

Для более общих случаев вы можете сделать это:

<cfloop ...>
  <cfset myList=listAppend(myList,value)>
</cfloop>

Есть также немного хитростиэто можно сделать, поскольку ColdFusion (по умолчанию) игнорирует пустые элементы списка:

<cfset myList=arrayToList(listToArray(myList))>

Черт, даже это будет работать:

<cfset myList=listChangeDelims(myList , "," , ",")>

Конечно, если вы не выводитесписок в виде строки, вам не нужно беспокоиться об этой запятой в конце, так как ColdFusion будет просто игнорировать пустой элемент.Если вы выводите это как строку, вот еще один способ убрать эту запятую.Это не так надежно, как другие.

<cfoutput>#left(trim(mylist),len(trim(mylist))-1)#</cfoutput>
...