Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

sort

構文

説明

および apply-templates ステートメントが現在のノードリストをfor-each繰り返す順序を制御します。デフォルトでは、 および apply-templates ステートメントはノードをfor-eachドキュメントの順序で考慮しますが、 ステートメントはsortノードリストを反復処理する前の順序を定義します。または apply-templates ステートメントの直後に sort ステートメントをfor-each挿入します。ステートメントはsort、ループが最初に開始された場合にのみ処理されます。

sortステートメントには、オプションの XPath 式と、3 つのオプション パラメーターがあります。ordercase-orderdata-typeXPath 式は、並べ替えに使用される各ノードの比較文字列を決定します。スクリプトはノードを持つ式をコンテキストとして評価し、結果をそのノードの比較文字列に変換します。XPath 式を指定しない場合、デフォルト値は「.」となり、リスト内の各ノードの文字列内容が比較されます。== や _ などの SLAX 固有の演算子は、式文字列内では使用できません。ステートメントにsortオプションパラメータが含まれていない場合、各ノードの文字列値に基づいてリストがソートされます。

ステートメントはsort、基になる XML データ構造を永続的にソートせず、 または apply-templates ステートメントでfor-each使用されている現在のノードリストの順序のみを表示します。1 つのfor-eachまたは apply-templates ステートメントに複数sortのステートメントを割り当てることができます。それらは、違いが見つかるまで順に適用されます。

属性

expression

並べ替えに使用される各ノードの比較文字列を決定する XPath 式。デフォルト値は「..」です。

case-order

最初に小文字をソートするか、最初に大文字でソートするかを指定します。許容できる値は、「下位優先」または「上位優先」です。デフォルトは「上位優先」です。

data-type

要素タイプを指定して、数値、字句、またはその他の並べ替えを実行するかどうかを決定します。許容できる値は「数値」と「テキスト」です。デフォルトは「テキスト」です。

「text」に設定 data-type すると、文字列はそれらの文字値(つまりASCIIコード)に基づいて比較されるため、「0」は「9」より小さく、「A」より小さく、「Z」より小さく、「a」より小さく、「z」未満です。"number" に設定 data-type すると、文字列は数値に変換され、数値で比較されます。昇順テキストのソートでは、「0」は「1」よりも低いASCIIコードを持ちますが、昇順番号のソートでは、11は100よりも小さいため、11は100より前に来ます。

order

昇順または降順で並べ替えるかどうかを指定します。許容できる値は「降順」または「昇順」です。デフォルトは「昇順」です。

SLAX の例

次の SLAX スクリプトの例では、Junos XML API get-interface-information コマンドを実行し、結果の出力を解析します。ループは for-each 、昇順でソートされたデバイス上の各物理インターフェイスの名前を印刷します。

リリース情報

Junos OSリリース12.2以降のリリースでサポートされているSLAX言語のバージョン1.1で導入されたステートメント。