9 字符串函数
此处列出的所有函数均支持用于:
以下仅列出函数,不包含附加信息。点击函数可查看完整详情。
| Function | Description |
|---|---|
| ascii | 值最左侧字符的 ASCII 代码。 |
| bitlength | 值的位长度。 |
| bytelength | 值的字节长度。 |
| char | 将该值解释为 ASCII 代码并返回对应字符。 |
| concat | 通过连接引用的监控项值或常量值而得到的字符串。 |
| insert | 从字符串中的指定位置开始,向字符串中插入指定字符或空格。 |
| jsonpath | 返回 JSONPath 结果。 |
| left | 返回值最左侧的字符。 |
| length | 值的字符长度。 |
| ltrim | 从字符串开头移除指定字符。 |
| mid | 从由“start”指定的字符位置开始,返回长度为 N 的子字符串。 |
| repeat | 重复一个字符串。 |
| replace | 在值中查找模式并替换为 replacement。 |
| 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)
value 的字节长度。
支持的值类型:String、Text、Log、Integer。
参数:
- value - 要检查的值
示例:
bytelength(last(/host/key))
char(value)
通过将该值解释为 ASCII 代码来返回相应字符。
支持的值类型:Integer。
参数:
- value - 要检查的值
该值必须在 0-255 范围内。例如,像“65”这样的值(解释为 ASCII 代码)将返回“A”。
示例:
char(last(/host/key))
concat(<value1>,<value2>,...)
通过连接引用的监控项值或常量值而得到的字符串。
支持的值类型:String、Text、Log、Float、Integer。
参数:
- 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)
从字符串中指定的位置开始,将指定字符或空格插入到该字符串中。
支持的值类型: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) #返回最左侧三个字符
length(value)
value 的字符长度。
支持的值类型:String、Text、Log。
参数:
- value - 要检查的值。
示例:
length(last(/host/key)) #最新值的长度
length(last(/host/key,#3)) #倒数第三个最新值的长度
length(last(/host/key,#1:now-1d)) #一天前最近值的长度
ltrim(value,<chars>)
从字符串开头移除指定字符。
支持的值类型:字符串、文本、日志。
参数:
- 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 - 子字符串中要返回的字符数。
例如,对于类似“Zabbix”的值,如果起始位置为 2,返回的字符数为 4,则可以返回“abbi”。
示例:
mid(last(/host/key),2,4)="abbi"
repeat(value,count)
重复一个字符串。
支持的值类型:String、Text、Log。
参数:
- value - 要检查的值;
- count - 重复的次数。
示例:
repeat(last(/host/key),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) #返回最右侧的三个字符
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>)
从字符串的开头和结尾移除指定字符。
支持的值类型:字符串、文本、日志。
参数:
- 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")
参见所有支持的函数。