You are viewing documentation for the development version, it may be incomplete.
Join our translation project and help translate Zabbix documentation into your native language.

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)

値のビット長。
サポートされている値の型: 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'に置き換えます

値の右端の文字を返します。
サポートされている値の型: 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")

サポートされているすべての関数を参照してください。