<c:forTokens>
xmlns:c="http://java.sun.com/jsp/jstl/core"

SYNOPSIS

<c:forTokens
items*="文字列"
delims*="デリミタ"
begin="0|数値"
end="数値"
step="1|数値"
var="変数名"
varStatus="変数名"
>
ループして評価する内容.
</c:forTokens>

説 明

文字列内のトークンを列挙します。これは StringTokenizer(items,delims)Java™ API リファレンス を使用したトークンの列挙と同じです。

items 属性の文字列の中から delims 属性で指定した文字のいずれかと一致する文字をデリミタ (区切り文字) としてトークンを取り出します。連続したデリミタ文字はひとつのデリミタと見なされます (つまり長さが 0 のトークンは列挙されません)。

属 性

items="文字列"
required

列挙するトークンを含む文字列を指定します。 begin, end, step 属性を指定することで特定の位置のトークンだけを列挙の対象とすることができます。

delims="デリミタ"
required

トークンを分割するデリミタ (区切り文字) を指定します。 items 属性の文字列の中からこの属性で指定した文字のどれかと一致する文字をデリミタとしてトークンを取り出します。

begin="0|数値"
optional

トークンの開始位置を指定します。値は 0 以上を指定する必要があります。

end="数値"
optional

トークンの終了位置を指定します。値は 0 以上を指定する必要があります。

step="1|数値"
optional

トークン列挙のステップ数を指定します。値は 1 以上を指定する必要があります。

var="変数名"
optional

列挙中のトークンを格納する変数名です。ループ内の処理からこの変数名を用いてトークンにアクセスすることができます (スコープは page 固定になります)。

varStatus="変数名"
optional

ループ内の処理からループの状態を参照するための変数名を指定します。この変数名には LoopTagStatusJava™ API リファレンス のインスタンスが格納されます。

内 容

ループして評価する内容。

使用例

12ヶ月をコンマ区切りで列挙します。
JSP
<c:set var="tokens">Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec</c:set>
<c:forTokens var="mon" items="${tokens}" delims=",">
  [<c:out value="${mon}" />]
</c:forTokens>
実行結果
[Jan] [Feb] [Mar] [Apr] [May] [Jun] [Jul] [Aug] [Sep] [Oct] [Nov] [Dec]
デリミタを複数指定した場合はそのどれかと一致する文字がトークンの区切りと見なされます。また先頭と末尾のデリミタは無視され、連続したデリミタ文字は単一のデリミタと見なされます (長さが 0 のトークンは列挙されません)。
JSP
<c:set var="tokens">:foo,bar,:hoge</c:set>
<c:forTokens var="t" items="${tokens}" delims=":,">
  [<c:out value="${t}" />]
</c:forTokens>
実行結果
[foo] [bar] [hoge]
CVS 2008/03/09