- 9 字符串函数
- 函数详情
- ascii(value)
- bitlength(value)
- bytelength(value)
- char(value)
- concat(<value1>,<value2>,…)
- insert(value,start,length,replacement)
- jsonpath(value,path,<default>)
- left(value,count)
- length(value)
- ltrim(value,<chars>)
- mid(value,start,length)
- repeat(value,count)
- replace(value,pattern,replacement)
- right(value,count)
- rtrim(value,<chars>)
- trim(value,<chars>)
- xmlxpath(value,path,<default>)
- 函数详情
9 字符串函数
此处列出的所有功能均受支持:
下面列出的函数没有附加信息。点击该函数查看完整的详细信息。
函数 | 说明 |
---|---|
ascii | 值最左边字符的ASCII码。 |
bitlength | 以比特为单位值的长度。 |
bytelength | 以字节为单位值的长度。 |
char | 通过将值转换为ASCII码来返回字符。 |
concat | 由串联引用的监控项值或常量值产生的字符串。 |
insert | 从字符串中的指定位置开始,将指定的字符或空格插入到字符串中。 |
jsonpath | 返回JSONPath结果。 |
left | 返回值最左边的字符。 |
length | 以字符为单位值的长度。 |
ltrim | 从字符串的开头删除指定的字符。 |
mid | 返回从’start’指定的字符位置开始的N个字符的子字符串。 |
repeat | 重复字符串。 |
replace | 在值中查找样例值并用替换值进行替换。 |
right | 返回值最右边的字符。 |
rtrim | 从字符串的末尾删除指定的字符。 |
trim | 从字符串的开头和结尾删除指定的字符。 |
xmlxpath | 返回XML路径语言结果。 |
函数详情
关于函数参数的一般性说明:
- 函数参数用逗号分隔
- 表达式可以作为参数
- 字符串参数必须用双引号括起来;否则可能会被误解
- 可选函数参数(或参数部分)由
<
>
表示
ascii(value)
值最左边字符的ASCII码。
支持的值类型:字符串、文本、日志。
参数:
- value - 要检查的值
例如,’Abc’这样的值将返回’65’(’A’的ASCII代码)。
示例:
ascii(last(/host/key))
bitlength(value)
以比特为单位值的长度。
支持的值类型:字符串、文本、日志、整数。
参数:
- value - 要检查的值
示例:
bitlength(last(/host/key))
bytelength(value)
以字节为单位值的长度。
支持的值类型:字符串、文本、日志、整数。
参数:
- value - 要检查的值
示例:
bytelength(last(/host/key))
char(value)
通过将值转换为ASCII码来返回字符。
支持的值类型:整数。
参数:
- value - 要检查的值
该值必须在0-255范围内。例如,’65’这样的值(解释为ASCII码)将返回’A’。
示例:
char(last(/host/key))
concat(<value1>,<value2>,…)
由串联引用的监控项值或常量值产生的字符串。
支持的值类型:字符串、文本、日志、浮点、整数。
参数:
- valueX -由历史函数之一返回的值或常量值(字符串、整数或浮点数)。必须至少包含两个参数。
例如,’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)
从字符串中的指定位置开始,将指定的字符或空格插入到字符串中。
支持的值类型:字符串、文本、日志。
参数:
value - 要检查的值;
start - 开始的位置;
length - 要替换的位置;
replacement - 替换的字符串。
例如,如果将 ‘bb’(起始位置 3,要替换的位置 2)替换为 ‘b’,则类似于 ‘Zabbbix’ 的值将替换为 ‘Zabbix’。
示例:
insert(last(/host/key),3,2,"b")
jsonpath(value,path,<default>)
返回JSONPath结果。
支持的值类型:字符串、文本、日志。
参数:
value - 要检查的值;
path - 路径(必须加引号);
default - 如果JSONPath查询没有数据返回,则为可选的回退值。请注意,在其他错误中会返回失败 (比如”不支持的结构”)。
示例:
jsonpath(last(/host/proc.get[zabbix_agentd,,,summary]),"$..size")
left(value,count)
返回值最左边的字符。
支持的值类型:字符串、文本、日志。
参数:
value - 要检查的值;
count - 返回的字符数。
例如,您可以通过指定要返回的最左边的 3 个字符从’Zabbix’ 返回 ‘Zab’。另参见 right()。
示例:
left(last(/host/key),3) #return three leftmost characters
length(value)
以字符为单位值的长度。
支持的值类型:字符串、文本、日志。
参数:
- value - 要检查的值
示例:
length(last(/host/key)) #the length of the latest value
length(last(/host/key,#3)) #the length of the third most recent value
length(last(/host/key,#1:now-1d)) #the length of the most recent value one day ago
ltrim(value,<chars>)
从字符串的开头删除指定的字符。
支持的值类型:字符串、文本、日志。
参数:
value - 要检查的值;
chars(可选)-指定要删除的字符
默认情况下,空格会被左对齐(如果未指定可选字符)。另参见: rtrim(), trim()。
示例:
ltrim(last(/host/key)) #remove whitespace from the beginning of string
ltrim(last(/host/key),"Z") #remove any 'Z' from the beginning of string
ltrim(last(/host/key)," Z") #remove any space and 'Z' from the beginning of string
mid(value,start,length)
返回从’start’指定的字符位置开始的N个字符的子字符串。
支持的值类型:字符串、文本、日志。
参数:
value - 要检查的值;
start - 子字符串的开始位置;
length - 要在子字符串中返回的位置。
例如,如果起始位置为 2,返回的位置为 4,则可以从像 ‘Zabbix’ 这样的值返回 ‘abbi’。
示例:
mid(last(/host/key),2,4)="abbi"
repeat(value,count)
重复字符串。
支持的值类型:字符串、文本、日志。
参数:
value - 要检查的值;
count -重复的次数。
示例:
repeat(last(/host/key),2) #repeat the value two times
replace(value,pattern,replacement)
在值中查找样例值并用替换值进行替换。所有出现的样例值都将被替换。
支持的值类型:字符串、文本、日志。
参数:
value - 要检查的值;
pattern - 找到样例值;
replacement - 替换样例值的字符串。
示例:
replace(last(/host/key),"ibb","abb") - replace all 'ibb' with 'abb'
right(value,count)
返回值最右边的字符。
支持的值类型:字符串、文本、日志。
参数:
value - 要检查的值;
count - 要返回的字符数。
例如,可以通过指定最右边的 3 个字符来从 ‘Zabbix’ 返回 ‘bix’。 另参见 left()。
示例:
right(last(/host/key),3) #return three rightmost characters
rtrim(value,<chars>)
从字符串的末尾删除指定的字符。
支持的值类型:字符串、文本、日志。
参数:
value - 要检查的值;
chars (可选)- 指定要删除的字符。
默认情况下,空格会被右对齐(如果未指定可选字符)。另参见: ltrim(),trim()。
示例:
rtrim(last(/host/key)) #remove whitespace from the end of string
rtrim(last(/host/key),"x") #remove any 'x' from the end of string
rtrim(last(/host/key),"x ") #remove any 'x' and space from the end of string
trim(value,<chars>)
从字符串的开头和结尾删除指定的字符。
支持的值类型:字符串、文本、日志。
参数:
value - 要检查的值;
chars (可选)- 指定要删除的字符。
默认情况下,空格会被居中对齐(如果未指定可选字符)。另参见ltrim(), rtrim()。
示例:
trim(last(/host/key)) - remove whitespace from the beginning and end of string
trim(last(/host/key),"_") - remove '_' from the beginning and end of string
xmlxpath(value,path,<default>)
返回XML路径语言结果。
支持的值类型:字符串、文本、日志。
参数:
value - 要检查的值;
path - 路径(必须加引号);
default - 如果XML XPath查询返回空节点集,这是可选的回退值。 如果空结果不是节点集(即空字符串)则不返回。在其他错误中,会返回失败(例如 “无效表达式”)。
示例:
xmlxpath(last(/host/xml_result),"/response/error/status")
参见 所有支持的函数。