有奖捉虫:行业应用 & 管理与支持文档专题 HOT

简介

字符串处理函数,支持字符串长度计算、大小写转换、拼接字符串、替换、剔除、查找字符所在位置、前后缀匹配等。

str_exist 函数

函数定义

在值中指定范围内查找子串,返回 True 或 False。

语法描述

str_exist(data1, data2, ignore_upper=False)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
字符串类型的值
String

-
data2
字符串类型的值
String

-
ignore_upper
是否区分大小写
Bool
False
-

示例

原始日志:
{"data": "cls nihao"}
加工规则:
fields_set("result", str_exist(v(data), "nihao"))
加工结果:
{"result":"true","data":"cls nihao"}

str_count 函数

函数定义

在值中指定范围内查找子串,返回子串出现的次数。

语法描述

str_count(, sub="", start=0, end=-1)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
字符串类型的值
string
-
-
sub
需要查找的子字符串
string
-
-
start
查找的起始位置
number
默认为0
-
end
查找的结束位置
number
默认为-1
-

示例

原始日志:
{"data": "warn,error,error"}
加工规则:
fields_set("result", str_count(v("data"), sub="err"))
加工结果:
{"result":"2","data":"warn,error,error"}

str_len 函数

函数定义

返回字符串长度。

语法描述

str_len()

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
字符串类型的值
string
-
-

示例

原始日志:
{"data": "warn,error,error"}
加工规则:
fields_set("result", str_len(v("data")))
加工结果:
{"result":"16","data":"warn,error,error"}

str_uppercase 函数

函数定义

返回大写字符串。

语法描述

str_uppercase()

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
字符串类型的值
string
-
-

示例

原始日志:
{"data": "warn,error,error"}
加工规则:
fields_set("result", str_uppercase(v("data")))
加工结果:
{"result":"WARN,ERROR,ERROR","data":"warn,error,error"}

str_lowercase 函数

函数定义

返回小写字符串。

语法描述

str_lowercase()

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
字符串类型的值
string
-
-

示例

原始日志:
{"data": "WARN,ERROR,ERROR"}
加工规则:
fields_set("result", str_lowercase(v("data")))
加工结果:
{"result":"warn,error,error","data":"WARN,ERROR,ERROR"}

str_join 函数

函数定义

使用拼接字符串,拼接多值。

语法描述

str_join(拼接字符串1, 值1, 值2, ...)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
join
字符串类型的值
string
-
-
值参数,可变参数列表
字符串类型的值
string
-
-

示例

原始日志:
{"data": "WARN,ERROR,ERROR"}
加工规则:
fields_set("result", str_join(",", v("data"), "INFO"))
加工结果:
{"result":"WARN,ERROR,ERROR,INFO","data":"WARN,ERROR,ERROR"}

str_replace 函数

函数定义

替换字符串,返回替换结果字符串。

语法描述

str_replace(, old="", new="", count=0)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
字符串类型的值
string
-
-
old
将要被替换的字符串
string
-
-
new
替换的目标字符串
string
-
-
count
最大替换次数,默认全部替换
number
默认为0
-

示例

将字段 data 的值中的 "WARN" 替换为 "ERROR"。
原始日志:
{"data": "WARN,ERROR,ERROR"}
加工规则:
fields_set("result", str_replace( v("data"), old="WARN", new="ERROR"))
将替换的结果保存到新字段 "result" 中。 加工结果:
{"result":"ERROR,ERROR,ERROR","data":"WARN,ERROR,ERROR"}

str_format 函数

函数定义

格式化字符串,返回格式化结果。

语法描述

str_format(格式化字符串, 值1, 值2, ...)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
format
目标格式,占位符使用{},例如:"The disk contains {0} files."。其中{}中的数字,对应后面参数值的序号,从0开始。具体使用可参考 MessageFormat.format 函数的使用
string
-
-
值参数,可变参数列表
字符串类型的值
string
-
-

示例

原始日志:
{"status": 200, "message":"OK"}
加工规则:
fields_set("result", str_format("status:{0}, message:{1}", v("status"), v("message")))
加工结果:
{"result":"status:200, message:OK","message":"OK","status":"200"}

str_strip 函数

函数定义

移除字符串的开头和结尾处的指定字符。

语法描述

str_strip(值, chars="\\t\\r\\n")

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
字符串类型的值
string
-
-
chars
将要被剔除的字符串
string
\\t\\r\\n
-

示例

示例1 原始日志:
{"data": " abc "}
加工规则:
fields_set("result", str_strip(v("data"), chars=" "))
加工结果:
{"result":"abc","data":" abc "}
示例2 原始日志:
{"data": " **abc** "}
加工规则:
fields_set("result", str_strip(v("data"), chars=" *"))
加工结果:
{"result":"abc","data":" **abc** "}

str_lstrip 函数

函数定义

移除字符串开头处的指定字符。

语法描述

str_strip(, chars="\\t\\r\\n")

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
字符串类型的值
string
-
-
chars
将要被剔除的字符串
string
\\t\\r\\n
-

示例

原始日志:
{"data": " abc "}
加工规则:
fields_set("result", str_lstrip(v("data"), chars=" "))
加工结果:
{"result":"abc ","data":" abc "}

str_rstrip 函数

函数定义

移除字符串结尾处的指定字符。

语法描述

str_strip(, chars="\\t\\r\\n")

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
字符串类型的值
string
-
-
chars
将要被剔除的字符串
string
\\t\\r\\n
-

示例

原始日志:
{"data": " abc "}
加工规则:
fields_set("result", str_rstrip(v("data"), chars=" "))
加工结果:
{"result":" abc","data":" abc "}

str_find 函数

函数定义

在值中查找子串,并返回子串出现的位置。

语法描述

str_find(, sub="", start=0, end=-1)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
字符串类型的值
string
-
-
sub
准备查找的子字符串
string
-
-
start
查找的起始位置
number
默认为0
-
end
查找的结束位置
number
默认为-1
-

示例

原始日志:
{"data": "warn,error,error"}
加工规则:
fields_set("result", str_find(v("data"), sub="err"))
加工结果:
{"result":"5","data":"warn,error,error"}

str_start_with 函数

函数定义

判断字符串是否以指定前缀开头。

语法描述

str_start_with(, sub="", start=0, end=-1)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
字符串类型的值
string
-
-
sub
前缀字符串
string
-
-
start
查找的起始位置
number
默认为0
-
end
查找的结束位置
number
默认为-1
-

示例

示例1 原始日志:
{"data": "something"}
加工规则:
fields_set("result", str_start_with(v("data"), sub="some"))
加工结果:
{"result":"true","data":"something"}
示例2 原始日志:
{"data": "something"}
加工规则:
fields_set("result", str_start_with(v("data"), sub="*"))
加工结果:
{"result":"false","data":"something"}

str_end_with 函数

函数定义

判断字符串是否以指定后缀结尾。

语法描述

str_end_with(值, sub="", start=0, end=-1)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
字符串类型的值
string
-
-
sub
后缀字符串
string
-
-
start
查找的起始位置
number
默认为0
-
end
查找的结束位置
number
默认为-1
-

示例

原始日志:
{"data": "endwith something"}
加工规则:
fields_set("result", str_end_with(v("data"), sub="ing"))
加工结果:
{"result":"true","data":"endwith something"}