split() Function (SLAX and XSLT)
名前 空間
http://xml.juniper.net/junos/commit-scripts/1.0 http://xml.libslax.org/slax
SLAX 構文
var $substrings = prefix:split(expression, string, <limit>);
XSLT 構文
<xsl:variable name="substrings" select="prefix:split(expression, string, <limit>)"/>
説明
正規表現パターンで区切られた部分文字列の配列に文字列を分割します。オプションの整数引数 limit
を指定した場合、関数は文字列全体を部分文字列の数に limit
分割します。一致する数が複数 limit
ある場合、部分文字列には最初 limit
の -1 一致と、最後の一致の元の文字列の残りの部分が含まれます。
prefix名前空間 URI に関連付けられているものは、スタイル シートのプレフィックスから名前空間へのマッピングで定義する必要があります。
パラメーター
expression |
区切り文字として使用される正規表現パターン。 |
limit |
(オプション)元の文字列を分割する部分文字列の数。 |
string |
元の文字列。 |
戻り値
$substrings |
部分文字列の |
使用例
次の例では、元の文字列は"123:abc:456:xyz:789"です。この関数は jcs:split()
、正規表現パターンで区切られた部分文字列にこの文字列を分割します。この場合はコロン(:)) です。オプションのパラメータ limit
は指定されていないので、この関数は、区切り文字(:))で囲まれている部分文字列をすべて含む配列を返します。
var $pattern = "(:)"; var $substrings = jcs:split($pattern, "123:abc:456:xyz:789");
返します:
$substrings[1] == "123" $substrings[2] == "abc" $substrings[3] == "456" $substrings[4] == "xyz" $substrings[5] == "789"
次の例では、前の例と同じ元の文字列と正規表現を使用していますが、この場合、オプションパラメータ limit
が含まれています。=2 を limit
指定すると、関数は 2 つの部分文字列のみを含む配列を返します。部分文字列には、最初の一致(前の例と同じ最初の一致)が「123」(前の例と同じ)と、最初の区切り文字が出現した後の元の文字列の残りの部分である2番目の一致が含まれます。
var $pattern = "(:)"; var $substrings = jcs:split($pattern, "123:abc:456:xyz:789", 2);
返します:
$substrings[1] == "123" $substrings[2] == "abc:456:xyz:789"
リリース情報
Junos OS リリース 8.4 で導入された機能
Junos OS リリース 12.2 で追加 http://xml.libslax.org/slax slax 名前空間のサポート。