Standard Taglibs:Functionsタグライブラリ
ここでは、Standard Taglibsで定義されている、Functionsタグライブラリについて解説します。Functionsタグライブラリでは、文字列の検索・置換・削除、文字列のカウント、XMLタグ記号の変換など主に表示処理に関連するタグが定義されています。
- 実行環境
-
- ・WindowsXP Home Edition
- ・J2SDK 1.4.2_04
- ・Tomcat 5.0.18
- ・Standard Taglib 1.1.0
Functionsタグライブラリの一覧
Functionsタグライブラリで定義されているタグを以下に記載します。
タグ | 内容 |
---|---|
fn:contains | ある文字列の中に、指定された文字列が含まれるかを調べる。 |
fn:containsIgnoreCase | ある文字列の中に、指定された文字列が含まれるかを調べる。調べる際、大文字小文字の違いは区別されない。 |
fn:endsWith | ある文字列の最後に、指定された文字列が含まれるかを調べる。 |
fn:escapeXml | XMLで解釈される文字記号(<、>、&、'、")を、HTMLで表示できる文字記号(<、>、&、'、")に置き換えて出力する。 |
fn:indexOf | ある文字列の中で、指定された文字列がはじめて合致した際、合致した場所のindex番号を返す。 |
fn:join | 配列内の要素を一連の文字列として出力する。 |
fn:length | 配列、Collectionオブジェクトの要素数、文字列の文字数をカウントして、その数を返す。 |
fn:replace | 引数に指定された置き換え前文字列に合致する文字列を、置き換え後文字列に変換して出力する。置き換え前文字列に合致するすべての文字列が置き換わる。 |
fn:split | 文字列を引数に指定された区切り文字でわけ、配列に変換して出力する。 |
fn:startsWith | ある文字列の最初に、指定された文字列が含まれるかを調べる。 |
fn:substring | index番号を指定して、文字列内の特定文字列を抜き出す。 |
fn:substringAfter | 引数に指定する区切り文字列以降の文字列を抜き出す。 |
fn:substringBefore | 引数に指定する区切り文字列以前の文字列を抜き出す。 |
fn:toLowerCase | 文字列を小文字に変換して出力する。 |
fn:toUpperCase | 文字列を大文字に変換して出力する。 |
fn:trim | 文字列の両端の空白文字を削除して出力する。 |
Functionsタグライブラリの使用例
fn:contains
- 構文1
-
fn:contains(string, substring)
- 戻り型
boolean
- 属性
-
引数 引数型 内容 string String 調査される文字列を指定する。 substring String 含まれるかどうか調査する文字列を指定する。
サンプルコード: 変数s1で指定された文字列の中に、"castle"という文字列が含まれるかを調べます。
<tr>
<td>${s1}</td>
<td>castle</td>
<td>${fn:contains(s1, "castle")}</td>
</tr>
fn:containsIgnoreCase
- 構文1
-
fn:containsIgnoreCase(string, substring)
- 戻り型
boolean
- 属性
-
引数 引数型 内容 string String 調査される文字列を指定する。 substring String 含まれるかどうか調査する文字列を指定する。
サンプルコード: 変数s1で指定された文字列の中に、"CaStLe"という文字列が含まれるかを調べます。調べる際、大文字小文字の違いは区別されません。
<tr>
<td>${s1}</td>
<td>CaStLe</td>
<td>${fn:containsIgnoreCase(s1, "CaStLe")}</td>
</tr>
fn:endsWith
- 構文1
-
fn:endsWith(string, suffix)
- 戻り型
boolean
- 属性
-
引数 引数型 内容 string String 調査される文字列を指定する。 suffix String 文字列の最後に含まれるかどうか調査する文字列を指定する。
サンプルコード: 変数s1で指定された文字列の最後に、"castle"という文字列が含まれるかを調べます。
<tr>
<td>${s1}</td>
<td>castle</td>
<td>${fn:endsWith(s1, "castle")}</td>
</tr>
fn:escapeXml
- 構文1
-
fn:escapeXml(string)
- 戻り型
String
- 属性
-
引数 引数型 内容 string String XMLで解釈される文字記号をHTMLで表示できる文字記号に変換する文字列を指定する。
サンプルコード: 文字列"<foo>body of foo</foo>"の文字記号をHTMLで表示できる形に変換して表示します。
<tr>
<td><foo>body of foo</foo></td>
<td>${fn:escapeXml("<foo>body of foo</foo>")}</td>
</tr>
fn:indexOf
- 構文1
-
fn:indexOf(string, substring)
- 戻り型
int
- 属性
-
引数 引数型 内容 string String 調査される文字列を指定する。 substring String 文字列に含まれるかどうか調査する文字列を指定する。
サンプルコード: 変数s1で指定された文字列内で、初めて"castle"に合致した際の文字列のindex番号を返します。
<tr>
<td>${s1}</td>
<td>castle</td>
<td>${fn:indexOf(s1, "castle")}</td>
</tr>
fn:join
- 構文1
-
fn:join(array, separator)
- 戻り型
String
- 属性
-
引数 引数型 内容 array String[ ] 一連の文字列にする配列を指定する。 separator String 一連の文字列にする際に、配列要素を分けるセパレータを指定する。
サンプルコード: 変数a1で指定された配列をセパレータ" + "で分けて、一連の文字列を生成します。
<tr>
<td>${ex:display(a1)}</td>
<td> + </td>
<td>${fn:join(a1, " + ")}</td>
</tr>
fn:length
- 構文1
-
fn:length(input)
- 戻り型
String
- 属性
-
引数 引数型 内容 input 配列、
Collectionオ
ブジェクト、
Stringカウントされる配列、Collectionオブジェクト、Stringを指定する。
サンプルコード: 変数s1で指定された文字列の文字数をカウントしてその数を返します。
<tr>
<td>${s1}</td>
<td>${fn:length(s1)}</td>
</tr>
fn:replace
- 構文1
-
fn:replace(inputString, beforeText, afterText)
- 戻り型
String
- 属性
-
引数 引数型 内容 inputString String fn:replaceタグが適用される文字列を指定する。 beforeText String 置き換えられる前の文字列を指定する。 afterText String 置き換えられた後の文字列を指定する。
サンプルコード: 変数s1で指定された文字列の内、文字列"e"を文字列"*"に置き換えて出力します。
<tr>
<td>${s1}</td>
<td>e</td>
<td>*</td>
<td>${fn:replace(s1, "e", "*")}</td>
</tr>
fn:split
- 構文1
-
fn:split(string, delimiters)
- 戻り型
String[]
- 属性
-
引数 引数型 内容 string String 配列に変換される文字列を指定する。 delimiters String 文字列を配列の要素に区切る区切り文字を指定する。
サンプルコード: 変数s3で指定された文字列を区切り文字"|"で区切り、配列に変換して出力しています。
<tr>
<td>${s3}</td>
<td> | </td>
<td>${ex:display(fn:split(s3, "|"))}</td>
</tr>
fn:startsWith
- 構文1
-
fn:startsWith(string, prefix)
- 戻り型
boolean
- 属性
-
引数 引数型 内容 string String 調査される文字列を指定する。 prefix String 文字列の最初に含まれるかどうか調査する文字列を指定する。
サンプルコード: 変数s1で指定された文字列の最初に、"castle"という文字列が含まれるかを調べます。
<tr>
<td>${s1}</td>
<td>castle</td>
<td>${fn:startsWith(s1, "castle")}</td>
</tr>
fn:substring
- 構文1
-
fn:substring(string, beginIndex, endIndex)
- 戻り型
boolean
- 属性
-
引数 引数型 内容 string String fn:substringタグが適用される文字列を指定する。 beginIndex int 抜き出される文字列の初めの文字のindex番号を指定する。 endIndex int 抜き出される文字列の最後の文字のindex番号を指定する。文字列の一番最後を指定する場合は-1を使用する。
サンプルコード: 変数zipで指定された文字列の内、index番号6文字目から最後までの文字列を出力しています。
<tr>
<td>${zip}</td>
<td>6</td>
<td>-1</td>
<td>P.O. Box: ${fn:substring(zip, 6, -1)}</td>
</tr>
fn:substringAfter
- 構文1
-
fn:substringAfter(string, substring)
- 戻り型
String
- 属性
-
引数 引数型 内容 string String fn:substringAfterタグが適用される文字列を指定する。 substring String 抜き出す文字列を特定するための区切り文字列を指定する。
サンプルコード: 変数zipで指定された文字列の内、"-"に合致する以降の文字列を出力しています。
<tr>
<td>${zip}</td>
<td>-</td>
<td>P.O. Box: ${fn:substringAfter(zip, "-")}</td>
</tr>
fn:substringBefore
- 構文1
-
fn:substringBefore(string, substring)
- 戻り型
String
- 属性
-
引数 引数型 内容 string String fn:substringBeforeタグが適用される文字列を指定する。 substring String 抜き出す文字列を特定するための区切り文字列を指定する。
サンプルコード: 変数zipで指定された文字列の内、"-"に合致する以前の文字列を出力しています。
<tr>
<td>${zip}</td>
<td>-</td>
<td>P.O. Box: ${fn:substringBefore(zip, "-")}</td>
</tr>
fn:toLowerCase
- 構文1
-
fn:toLowerCase(string)
- 戻り型
String
- 属性
-
引数 引数型 内容 string String 小文字に変換される文字列を指定する。
サンプルコード: 変数s1で指定された文字列を小文字に変換して出力します。
<tr>
<td>${s1}</td>
<td>${fn:toLowerCase(s1)}</td>
</tr>
fn:toUpperCase
- 構文1
-
fn:toUpperCase(string)
- 戻り型
String
- 属性
-
引数 引数型 内容 string String 大文字に変換される文字列を指定する。
サンプルコード: 変数s1で指定された文字列を大文字に変換して出力します。
<tr>
<td>${s1}</td>
<td>${fn:toUpperCase(s1)}</td>
</tr>
fn:trim
- 構文1
-
fn:trim(string)
- 戻り型
String
- 属性
-
引数 引数型 内容 string String 空白文字が取り除かれる文字列を指定する。
サンプルコード: 変数custIdで指定された文字列の両端の空白文字を削除して出力しています。
<tr>
<td>
<pre>${custId} (whith trim)</pre>
</td>
<td>
<c:url value="http://acme.com/cust">
<c:param name="custId" value="${fn:trim(custId)}"/>
</c:url>
</td>
</tr>
8Standard Taglibs:Functionsタグライブラリ