組み込み関数

最終公開日 : Sep 25, 2026
組み込み関数は、StyleBook の式で使用されます。
たとえば、組み込み関数 str() を使用して、数値を文字列に変換できます。
str($parameters.order)
または、組み込み関数 int() を使用して、文字列を整数に変換できます。
int($parameters.priority)
StyleBook の式でサポートされている組み込み関数と、その使用方法の例を次に示します。
Related information

文字列()

str() 関数は、入力引数を文字列値に変換します。
許可される引数タイプ:
  • string
  • number
  • TCP-port
  • boolean
  • IP address
例:
  • "set-" + str(10)関数は"set-10"を返します。
  • str(10)関数は10を返します。
  • str(1.1.1.1)関数は1.1.1.1を返します。
  • str(T rue)関数は"T rue"を返します。
  • str(ADM)関数は"mas"を返します。

整数型()

int()関数は、文字列、数値、IPアドレス、またはtcpportを引数として受け取り、整数を返します。
例:
  • int("10")関数は10を返します。
  • int(10)関数は10を返します。
  • int(ip('0.0.4.1'))関数は1025を返します。

論理型()

bool()関数は任意の型を引数として受け取ります。引数の値がfalse、空、または存在しない場合、この関数はfalseを返します。
それ以外の場合は、trueを返します。
例:
  • bool(true)関数はtrueを返します。
  • bool(false)関数はfalseを返します。
  • bool($parameters.a)関数は、$parameters.aがfalse、空、または存在しない場合にfalseを返します。

len()関数

len()関数は、文字列またはリストを引数として受け取り、文字列内の文字数、またはリスト内の項目数を返します。
例1:
置換を次のように定義した場合:
items: ["123", "abc", "xyz"]
len($substitutions.items)関数は3を返します
例2:
len("NetScaler Console")関数は10を返します。
例3:
$parameters.vipsに['1.1.1.1', '1.1.1.2', '1.1.1.3']の値がある場合、len($parameters.vips)関数は3を返します。

min()関数

The min() 関数は、引数としてリストまたは一連の数値、あるいは tcp-ports を受け取り、最小の項目を返します。
一連の数値/TCPポートの例:
  • The min(80, 100, 1000) 関数は 80 を返します。
  • The min(-20, 100, 400) 関数は -20 を返します。
  • The min(-80, -20, -10) 関数は -80 を返します。
  • The min(0, 100, -400) 関数は -400 を返します。
数値/TCPポートのリストの例:
  • Support $parameters.ports は tcp-ports のリストであり、値は [80, 81, 8080] です。
    The min($parameters.ports) 関数は 80 を返します。

max() 関数

The max() 関数は、引数としてリストまたは一連の数値、あるいは tcp-ports を受け取り、最大の項目を返します。
一連の数値/TCPポートの例:
  • The max(80, 100, 1000) 関数は 1000 を返します。
  • The max(-20, 100, 400) 関数は 400 を返します。
  • The max(-80, -20, -10) 関数は -10 を返します。
  • The max(0, 100, -400) 関数は 100 を返します。
数値/TCPポートのリストの例:
  • サポート $parameters.ports は tcp-ports のリストであり、値は [80, 81, 8080] です。
    The max($parameters.ports) 関数は 8080 を返します。

bin() 関数

The bin() 関数は数値を引数として受け取り、その数値をバイナリ形式で表す文字列を返します。
式の例:
The bin(100) 関数は 0b1100100 を返します。

oct() 関数

The oct() 関数は数値を引数として受け取り、その数値を8進数形式で表す文字列を返します。
式の例:
The oct(100) 関数は 0144 を返します。

hex() 関数

The hex() 関数は数値を引数として受け取り、その数値を小文字の16進数形式で表す文字列を返します。
式の例:
hex(100) 関数は 0x64 を返します。

lower() 関数

lower() 関数は文字列を引数として受け取り、その文字列を小文字で返します。
例:
lower("ADM") 関数は adm を返します。

upper() 関数

upper() 関数は文字列を引数として受け取り、その文字列を大文字で返します。
例:
upper("NetScaler Console") 関数は NetScaler Console を返します。

sum() 関数

sum() 関数は数値のリストまたは tcpports を引数として受け取り、リスト内の数値の合計を返します。
例 1:
置換を次のように定義した場合: substitutions:
list-of-numbers = [11, 22, 55]
sum($substitutions.list-of-numbers) 関数は 88 を返します。
例 2:
$parameters.ports が [80, 81, 82] の場合、sum($parameters.ports) 関数は 243 を返します。

pow() 関数

pow() 関数は2つの数値を引数として受け取り、最初の引数を2番目の引数で累乗した結果を表す数値を返します。
例:
pow(3,2) 関数は 9 を返します。

ip()

ip() 関数は、整数、文字列、またはIPアドレスを引数として受け取り、入力値に基づいてIPアドレスを返します。
例:
  • ip 関数でIPアドレスを指定します。
    ip(3.1.1.1) 関数は 3.1.1.1 を返します。
  • ip 関数で文字列を指定します。
    ip('2.1.1.1') 関数は 2.1.1.1 を返します。
  • ip 関数で整数を指定します。
    • ip(12) 関数は 0.0.0.12 を返します。
    • ip 関数で整数を文字列として指定すると、入力と同等のIPアドレスを返します。
      ip('1025') 関数は 0.0.4.1 を返します。
    この関数は、整数の加算および減算操作もサポートしており、結果のIPアドレスを返します。
    • 加算: ip(1025) + ip(12) 関数は 0.0.4.13 を返します。
    • 減算: ip('1025') - ip(12) 関数は 0.0.3.245 を返します。
    • 加算と減算の組み合わせ: ip('1.1.1.1') + ip('1.1.1.1') – ip(2) は 2.2.2.0 を返します。

base64.encode()

base64.encode() 関数は文字列引数を受け取り、base64エンコードされた文字列を返します。
例:
base64.encode("abcd") 関数は YWJjZA== を返します。

base64.decode()

base64.decode 関数はbase64エンコードされた文字列を引数として受け取り、デコードされた文字列を返します。
例:
base64.decode("YWJjZA==") 関数は abcd を返します。

exists() 関数

exists()関数は任意の型の引数を受け取り、ブール値を返します。入力に何らかの値がある場合、戻り値はTrueです。入力引数に値がない場合(つまり、値がない場合)、戻り値はFalseです。
$parameters.monitorはオプションのパラメータであるとします。設定パックを作成する際にこのパラメータに値を指定すると、($parameters.monitor)関数はTrueを返します。
それ以外の場合、Falseを返します。

フィルター()

filter()関数は2つの引数を受け取ります。
引数1:1つの引数を受け取り、ブール値を返す置換関数。
引数2:リスト。
この関数は、最初の 引数にある置換関数に渡されたときに、各要素がTrueと評価される元のリストのサブセットを返します。
例:
次のような置換関数を考えます。
置換:
x(a): $a != 81
この関数は、入力値が81と等しくない場合、Trueを返します。それ以外の場合、Falseを返します。
仮に、$parameters.portsが[81, 80, 81, 89]であるとします。
filter($substitutions.x, $parameters.ports)は、リストから81のすべての出現箇所を削除することによって[80, 89]を返します。

if-then-else() 関数

関数 if-then-else() は3つの引数を取ります。
引数1:ブール式
引数2:任意の式
引数3:任意の式(オプション)
引数1の式が True と評価される場合、関数は引数2として提供された式の値を返します。
それ以外の場合、引数3が指定されている場合、関数は引数3の式の値を返します。
引数3が指定されていない場合、関数は no を返します。
例1:
関数 if-then-else($parameters.servicetype == HTTP, 80, 443) は、$parameters.servicetype が HTTP の値を持つ場合、80 を返します。それ以外の場合、関数は 443 を返します。
例2:
関数 if-then-else($parameters.servicetype == HTTP, $parameters.hport, $parameters.sport) は、$parameters.servicetype が HTTP の値を持つ場合、$parameters.hport の値を返します。
それ以外の場合、関数は $parameters.sport の値を返します。
例3:
if-then-else($parameters.servicetype == HTTP, 80) は、$parameters.servicetype が HTTP の値を持つ場合、80 を返します。
それ以外の場合、関数は値を返しません。

ジョイン()

join()関数は2つの引数を取ります:
引数1: 数値、tcp-ports、文字列、またはIPアドレスのリスト
引数2: 区切り文字列 (オプション)
この関数は、引数1として提供されたリストの要素を文字列に結合します。各要素は、引数2として提供された区切り文字列によって区切られます。引数2が指定されていない場合、リスト内の要素は1つの文字列として結合されます。
例:
  • $parameters.portsは[81, 82, 83]です。
    • 区切り文字引数を使用した場合:
      join($parameters.ports, '-')関数は81-82-83を返します。
    • 区切り文字引数を使用しない場合:
      join($parameters.ports)関数は818283を返します。

スプリット()

split()関数は、指定された区切り文字に応じて入力文字列を複数のリストに分割します。区切り文字が指定されていないか、空白 ('') の場合、この関数はスペースを区切り文字と見なし、文字列をリストに分割します。
例:
  • split('Example_string_split', 's') 関数は ['Example_','tring_','plit'] を返します。
  • split('Example string split') 関数は ['Example','string','split'] を返します。
  • split('Example string split', '') 関数は ['Example','string','split'] を返します。
  • split('Example string') 関数は ['Example','string'] を返します。
    この関数は、連続するスペースを1つのスペースとして扱います。

マップ()

map() 関数は2つの引数を取ります。
引数1:任意の関数
引数2:要素のリスト。
この関数は、リストの各要素が、map() 関数(引数1)を引数2の対応する要素に適用した結果であるリストを返します。
引数1で許可される関数:
  • 1つの引数を取る組み込み関数:
    base64.encode, base64.decode, bin, bool, exists, hex, int, ip, len, lower, upper, oct, quotewrap, str, trim, upper, url.encode, url.decode
  • 少なくとも1つの引数を取る置換関数。
例:
$parameters.nums が [81, 82, 83] であると仮定します。
  • 組み込み関数 str を使用してマップする
    map(str, $parameters.nums) 関数は ["81", "82", "83"] を返します
    map 関数の結果は文字列のリストであり、各要素は、入力リスト ($parameters.nums) 内の対応する要素に str 関数を適用することによって計算される文字列です。
  • 置換関数を使用してマップする
    • 置換:
      add-10(port): $port + 10
    • 式:
      map($substitutions.add-10, $parameters.nums) 関数は数値のリストを返します:[ 91, 92, 93 ]
この map 関数の結果は数値のリストです。各要素は、入力リスト ($parameters.nums) 内の対応する要素に置換関数 $substitutions.add-10 を適用することによって計算されます。

quotewrap() 関数

quotewrap() 関数は文字列を引数として受け取り、入力値の前後に二重引用符文字を追加した後に文字列を返します。
例:
quotewrap("ADM") 関数は "mas" を返します

replace() 関数

replace() 関数は3つの引数を取ります。
引数1: 次の組み込み型のstringまたはリスト:
  • string
  • number
  • ipaddress
  • tcp-port
  • boolean
引数2: 引数1で指定された型と一致する単一の値または値のリスト
引数3: 引数1で指定された型と同じ型の単一の値 (オプション)
replace() 関数は、引数1内の引数2のすべての出現箇所を引数3に置き換えます。
引数3が指定されていない場合、引数1から引数2のすべての出現箇所が削除されます。
例:
  • replace('abcdef', 'def', 'xyz') 関数は abcxyz を返します。
    def のすべての出現箇所が xyz に置き換えられます。
  • replace('abcdefabc', 'def') は abcabc を返します。
    引数3がないため、defは結果の文字列から削除されます。
  • replace('An#example@to%replace!characters', ['@', '#', '!', '%'], '_')関数はAn_example_to_replace_charactersを返します。
    出力文字列には、['@', '#', '!', '%']で指定された文字の代わりにアンダースコア (_) が含まれます。
  • replace([10.10.10.1, 10.10.10.2, 10.10.10.3, 10.10.10.4], [10.10.10.2, 10.10.10.4])関数は[10.10.10.1, 10.10.10.3]を返します。
    引数3がないため、10.10.10.2と10.10.10.4は結果のIPアドレスリストから削除されます。
  • replace([8080, 8081, 8082, 8083, 8084], 8083, 80)関数は[8080, 8081, 8082, 80, 8084]を返します。
    8083のすべての出現箇所は80に置き換えられます。

トリム()

trim()関数は、入力文字列から先頭と末尾の空白が削除された文字列を返します。
例:
trim(' abc ')関数はabcを返します。

トランケート()

truncate()関数は2つの引数を取ります。
引数1: 文字列
引数2: 数値
この関数は、引数1の入力文字列が引数2で指定された長さに切り詰められた文字列を返します。
例:
truncate('NetScaler Console', 6) は Citrix を返します。

ディスティンクト()

distinct() 関数は、リスト入力から一意の項目を抽出します。
例: $parameters.input_list が ['ADM', 'ADC', 'VPX', 'ADC', 'ADM', 'CPX'] の場合、distinct($parameters.input_list) 関数は ['ADM', 'ADC', 'VPX', 'CPX'] を返します。

url.encode()

url.encode() 関数は、RFC 3986 に従って文字が ASCII 文字セットを使用して変換された文字列を返します。
例:
url.encode("a/b/c") 関数は a%2Fb%2Fc を返します。

url.decode()

url.decode() 関数は、RFC 3986 に従って URL エンコードされた引数が通常の文字列にデコードされた文字列を返します。
例:
url.decode("a%2Fb%2Fc") 関数は a/b/c を返します。

イズ・アイピーブイフォー()

The is-ipv4() 関数はIPアドレスを引数として受け取り、そのIPアドレスがIPv4形式である場合にブール値 True を返します。
The is-ipv4(10.10.10.10) 関数は True を返します。

is-ipv6() 関数

The is-ipv6() 関数はIPアドレスを引数として受け取り、そのIPアドレスがIPv6形式である場合にブール値 True を返します。
The is-ipv6(2001:DB8::) 関数は True を返します。

startswith() 関数

The startswith() 関数は、文字列が指定されたプレフィックスで始まるかどうかを判断します。この関数には、2つの必須文字列引数が必要です。
startswith(str, sub_str)
この関数は、文字列 (str) が部分文字列 (sub_str) で始まる場合に True を返します。
例:
  • The startswith('Citrix', 'Ci') 関数は True を返します。
  • The startswith('Citrix', 'iC') 関数は False を返します。
  • The startswith('Citrix', 'Ab') 関数は False を返します。

endswith() 関数

The endswith() 関数は、文字列が指定されたサフィックスで終わるかどうかを判断します。この関数には、2つの必須文字列引数が必要です。
endswith(str, sub_str)
文字列 (str) が部分文字列 (sub_str) で終わる場合、この関数はTrueを返します。
例:
  • endswith('Citrix', 'ix')関数はTrueを返します。
  • endswith('Citrix', 'Ix')関数はFalseを返します。
  • endswith('Citrix', 'ab')関数はFalseを返します。

contains() 関数

contains()関数は、文字列が指定された部分文字列を含むかどうかを判断します。この関数には、2つの必須の文字列引数が必要です。
contains(str, sub_str)
部分文字列 (sub_str) が文字列 (str) 内のどこかに含まれている場合、この関数はTrueを返します。
例:
  • contains('Citrix', 'tri')関数はTrueを返します。
  • contains('Citrix', 'Ci')関数はTrueを返します。
  • contains('Citrix', 'ti')関数はFalseを返します

substring() 関数

文字列からサブストリングを抽出するには、substring() 関数を使用します。
substring(str, start_index, end_index)
この関数には、2つの必須引数と1つのオプションの整数引数が必要です。
  • str (必須)
  • start_index (必須)
  • end_index (オプション)
この関数は、指定されたインデックス位置の間にある文字列 (str) からサブストリングを返します。終了インデックス位置を指定しない場合、関数は開始インデックスから文字列の末尾までサブストリングを抽出します。
注
end_index を指定すると、サブストリングには end_index の位置にある文字は含まれません。
例:
  • substring('Citrix', 2) 関数は trix を返します。
  • substring('Citrix', 10) 関数は (") を返します。
    この例では、無効な start_index 位置があるため、関数は空の文字列を返します。
  • substring('Citrix', 2, 4) 関数は tr を返します。
    この例では、関数はインデックス位置2と4の間の文字を抽出します。
  • 「substring('Citrix', -3)」関数は「rix」を返します。
    文字列の末尾にある文字を抽出したい場合は、start_index 引数に負の値を指定します。
    この例では、関数は文字列の最後の3文字を含む部分文字列を抽出します。

multiple() 関数

「multiple()」関数は2つの引数を取ります。
引数1:number、string、boolean、ipaddress、tcp-port、または password
引数2:number
「multiple(argument1, argument2)」関数は、引数1の多くのコピーを含むリストを返します。コピーの数は、引数2に渡された数と等しくなります。
例:
  • 「multiple(10.10.10.10, 3)」関数は「[10.10.10.10, 10.10.10.10, 10.10.10.10]」を返します。
  • 「multiple(8080, 4)」関数は「[8080, 8080, 8080, 8080]」を返します。

reverse() 関数

reverse() 関数は、項目のリストを引数として受け取り、同じ項目を逆順に並べたリストを返します。
引数には、次の組み込み型のリストを指定できます。
  • string
  • number
  • ipaddress
  • ipnetwork
  • tcp-port
  • boolean
  • password
  • object
  • file
  • certfile
  • keyfile
  • certkey
例:
  • reverse() は を返します。
  • reverse() は を返します。
  • reverse() は を返します。