9 文字列関数
ここに記載されているすべての関数は、以下でサポートされています。
関数は追加情報なしでリストされています。関数をクリックすると詳細が表示されます。
| 関数 | 説明 |
|---|---|
| ascii | 値の最左文字のASCIIコード。 |
| bitlength | 値のビット長。 |
| bytelength | 値のバイト長。 |
| char | 値をASCIIコードとして解釈し、対応する文字を返す。 |
| concat | 参照されたアイテム値または定数値を連結した文字列。 |
| insert | 文字列の指定した位置から指定した文字またはスペースを挿入する。 |
| jsonpath | JSONPathの結果を返す。 |
| left | 値の最左文字を返す。 |
| length | 値の文字数。 |
| ltrim | 文字列の先頭から指定した文字を削除する。 |
| mid | 'start'で指定した位置からN文字分の部分文字列を返す。 |
| repeat | 文字列を繰り返す。 |
| replace | 値の中でパターンを検索し、置換文字列で置き換える。 |
| right | 値の最右文字を返す。 |
| rtrim | 文字列の末尾から指定した文字を削除する。 |
| trim | 文字列の先頭と末尾から指定した文字を削除する。 |
| xmlxpath | XML XPathの結果を返す。 |
関数の詳細
関数パラメータに関する一般的な注意事項:
- 関数パラメータはカンマで区切られます
- パラメータとして式が使用できます
- 文字列パラメータはダブルクォーテーションで囲む必要があります。そうしないと誤解釈される可能性があります
- オプションの関数パラメータ(またはパラメータの一部)は
<>で示されます
ascii(value)
値の最左文字のASCIIコード。
サポートされている値の型: String, Text, Log。
パラメータ:
- value - チェックする値
例えば、'Abc'のような値は'65'('A'のASCIIコード)を返します。
例:
ascii(last(/host/key))
bitlength(value)
valueのビット長。
サポートされている値の型: String, Text, Log, Integer。
パラメータ:
- value - チェックする値
例:
bitlength(last(/host/key))
bytelength(value)
値のバイト長。
サポートされている値の型: String, Text, Log, Integer。
パラメータ:
- value - チェックする値
例:
bytelength(last(/host/key))
char(value)
値をASCIIコードとして解釈して文字を返します。
サポートされている値の型: 整数。
パラメータ:
- value - チェックする値
値は0-255の範囲でなければなりません。例えば、'65'という値(ASCIIコードとして解釈)は'A'を返します。
例:
char(last(/host/key))
concat(<value1>,<value2>,...)
参照されたアイテムの値または定数値を連結した結果の文字列。
サポートされている値の型: String, Text, Log, Float, Integer。
パラメータ:
- valueX - ヒストリ関数のいずれかによって返される値、または定数値 (文字列、整数、または浮動小数点数)。少なくとも2つのパラメータを含める必要があります。
たとえば、「Zab」のような値に「bix」(定数文字列)を連結すると、「Zabbix」が返されます。
例:
concat(last(/host/key),"bix")
concat("1 min: ",last(/host/system.cpu.load[all,avg1]),", 15 min: ",last(/host/system.cpu.load[all,avg15]))
insert(value,start,length,replacement)
指定した位置から文字列に指定した文字またはスペースを挿入します。
サポートされている値の型: String, Text, Log。
パラメータ:
- value - チェックする値
- start - 開始位置
- length - 置換する位置数
- replacement - 置換文字列
例えば、'Zabbbix'の値は、'bb'(開始位置3、置換する位置数2)を'b'に置換すると'Zabbix'に置換されます。
例:
insert(last(/host/key),3,2,"b")
jsonpath(value,path,<default>)
JSONPathの結果を返します。
サポートされている値の型: String、Text、Log。
パラメータ:
- value - チェックする値;
- path - パス(引用符で囲む必要があります);
- default - JSONPathクエリがデータを返さない場合のオプションのフォールバック値。他のエラーの場合は失敗が返されます(例:"unsupported construct")。
例:
jsonpath(last(/host/proc.get[zabbix_agentd,,,summary]),"$..size")
left(value,count)
値の左端の文字を返します。
サポートされている値の型: String, Text, Log。
パラメータ:
- value - チェックする値
- count - 返す文字数
たとえば、返す左端の文字数を3に指定することで、'Zabbix'から'Zab'を返すことができます。right()も参照してください。
例:
left(last(/host/key),3) #左端の3文字を返す
length(value)
値の文字数。
サポートされている値の型:String、Text、Log。
パラメータ:
- value - チェックする値
例:
length(last(/host/key)) #最新値の文字数
length(last(/host/key,#3)) #3番目に新しい値の文字数
length(last(/host/key,#1:now-1d)) #1日前の最新値の文字数
ltrim(value,<chars>)
文字列の先頭から指定した文字を削除します。
サポートされている値の型: String, Text, Log。
パラメータ:
- value - チェックする値
- chars (省略可能) - 削除する文字を指定
省略可能な文字が指定されていない場合は、デフォルトで空白文字が左側から削除されます。詳細は rtrim()、trim() も参照してください。
例:
ltrim(last(/host/key)) #文字列の先頭から空白を削除
ltrim(last(/host/key),"Z") #文字列の先頭から'Z'をすべて削除
ltrim(last(/host/key)," Z") #文字列の先頭から空白と'Z'をすべて削除
mid(value,start,length)
'start'で指定された文字位置から始まるN文字の部分文字列を返します。
サポートされている値の型: String, Text, Log。
パラメータ:
- value - チェックする値;
- start - 部分文字列の開始位置;
- length - 部分文字列で返す文字数。
たとえば、開始位置が2、返す文字数が4の場合、'Zabbix'のような値から'abbi'を返すことができます。
例:
mid(last(/host/key),2,4)="abbi"
repeat(value,count)
文字列を繰り返します。
サポートされている値の型: String, Text, Log。
パラメータ:
- value - チェックする値
- count - 繰り返す回数
例:
repeat(last(/host/key),2) #値を2回繰り返す
replace(value,pattern,replacement)
値の中からパターンを見つけて、replacementで置き換えます。パターンに一致するすべての箇所が置き換えられます。
サポートされている値の型: String, Text, Log。
パラメータ:
- value - チェックする値
- pattern - 検索するパターン
- replacement - パターンを置き換える文字列
例:
replace(last(/host/key),"ibb","abb") # 'ibb'をすべて'abb'に置き換える
right(value,count)
値の右端の文字を返します。
サポートされている値の型: String, Text, Log。
パラメータ:
- value - チェックする値;
- count - 返す文字数。
例えば、右端から3文字を返すことで 'Zabbix' から 'bix' を返すことができます。left() も参照してください。
例:
right(last(/host/key),3) #右端から3文字を返す
rtrim(value,<chars>)
文字列の末尾から指定した文字を削除します。
サポートされている値の型: String, Text, Log。
パラメータ:
- value - チェックする値
- chars (省略可能) - 削除する文字を指定
省略可能な文字が指定されていない場合は、デフォルトで空白が右側から削除されます。詳細は ltrim()、trim() も参照してください。
例:
rtrim(last(/host/key)) #文字列の末尾から空白を削除
rtrim(last(/host/key),"x") #文字列の末尾から'x'を削除
rtrim(last(/host/key),"x ") #文字列の末尾から'x'と空白を削除
trim(value,<chars>)
文字列の先頭と末尾から指定した文字を削除します。
サポートされている値の型: String, Text, Log。
パラメータ:
- value - チェックする値;
- chars (省略可能) - 削除する文字を指定します。
デフォルトでは、(省略可能な文字が指定されていない場合)両端の空白がトリミングされます。関連項目: ltrim(), rtrim()。
例:
trim(last(/host/key)) #文字列の先頭と末尾から空白を削除
trim(last(/host/key),"_") #文字列の先頭と末尾から'_'を削除
xmlxpath(value,path,<default>)
XML XPathの結果を返します。
サポートされている値の型: String, Text, Log。
パラメータ:
- value - チェックする値;
- path - パス(引用符で囲む必要があります);
- default - XML XPathクエリが空のノードセットを返した場合のオプションのフォールバック値。空の結果がノードセットでない場合(つまり空文字列)、返されません。他のエラーの場合は失敗が返されます(例: "invalid expression")。
例:
xmlxpath(last(/host/xml_result),"/response/error/status")
サポートされているすべての関数を参照してください。