ListGetAt

説明

指定された位置にあるリスト要素を取得します。

戻り値

position に位置するリスト要素の値

カテゴリ

リスト関数

関数のシンタックス

ListGetAt(list, position [, delimiters, includeEmptyValues ])

関連項目

ListFirstListLastListQualifyListSetAt、『ColdFusion アプリケーションの開発』のLists

パラメータ

パラメータ

説明

list

リスト、またはリストを含んでいる変数です。

position

正の整数、または正の整数を含んでいる変数です。要素を取得する位置を指定します。リスト内の先頭を示す位置は 1 です。

delimiters

文字列、または文字列を含んでいる変数です。リスト要素を区切る文字です。デフォルト値はカンマ (,) です。

このパラメータに複数の文字が含まれている場合、それぞれの文字が出現するすべての箇所が区切り文字として処理されます。

includeEmptyValues

オプション。空の値を含めるには、このパラメータを yes に設定します。

使用方法

文字列の中で区切り文字の後にスペースが付加されている場合、リスト関数を使用すると、返されるリスト要素の先頭にスペースが含まれることがあります。このような場合は、trim 関数を使用して、返された要素からスペースを削除します。たとえば、次のようなリストがこれに該当します。

<cfset myList = "one hundred, two hundred, three hundred">

このリストから値を取得するには、trim 関数を使用して、戻り値の先頭にあるスペースを削除します。

<cfset MyValue = #trim(listGetAt(myList, 2))#>

これにより、MyValue = " two hundred" ではなく "two hundred" となります。リスト要素の途中にあるスペースは保持されます。

ColdFusion では空のリスト要素が無視されるため、"a,b,c,,,d" の場合は 4 つの要素があることになります。

<h3>ListGetAt Example</h3> 
<!--- Find a list of users who wrote messages ---> 
<cfquery name = "GetMessageUser" datasource = "cfdocexamples"> 
    SELECT Username, Subject, Posted 
    FROMMessages 
</cfquery> 
<cfset temp = ValueList(GetMessageUser.Username)> 
<!--- loop through the list and show it with ListGetAt ---> 
<h3>This list of usernames who have posted messages numbers 
<cfoutput>#ListLen(temp)#</cfoutput> users.</h3> 
<ul> 
<cfloop From = "1" To = "#ListLen(temp)#" index = "Counter"> 
    <cfoutput><li>Username #Counter#: #ListGetAt(temp, Counter)# </cfoutput> 
</cfloop> 
</ul>