更新时间:2022-08-25 GMT+08:00
分享

信息抽取函数

结构化抽取适用于xlsx、csv、json格式的基础数据,选择结构化抽取方式信息抽取时,可分为交互界面配置和代码编辑。

在通过结构化抽取方式进行信息抽取时,即用交互界面配置或用代码编辑进行信息抽取时,需要配置引用字段的抽取函数。

KG服务支持的信息抽取函数如表1所示。其中,“字段”表示基础数据中的字段名,在抽取函数中引用字段时,使用格式为“${字段}”,例如抽取基础数据中属性“name”的字段,在抽取函数中引用字段的格式为“trim(${name})”

表1 信息抽取函数说明表

抽取函数

函数说明

抽取函数示例

抽取前数据示例

抽取后数据示例

trim(字段)

裁剪字段前后的空白字符

trim(${name})

"name":" mike "

"mike"

substring (字段, int pos, int len)

获取从该字段值第pos个字符(从0开始)开始的长度为len的子串

substring (${id}, 1, 6)

"id":"a000111"

"000111"

split(字段,string pattern )

将字段值以pattern为分隔符分割,得到一个列表。pattern可以是一个正则表达式,所有与pattern匹配的子串都作为分隔符。

split(${roles}, ', ')

"roles":"role1,role2"

["role1", "role2"]

concat(字段1,字段2, ...)

将字段1、字段2...依次拼接成一个长字符串。此处字段值也可以是一个字符串常量。

concat(${name}, '--', ${id})

"name": "mike",

"id": "a000111"

"mike--a000111"

regexp_replace(字段, string pattern, string replacement)

将字段值中与正则表达式pattern匹配的部分替换为replacement

regexp_replace(${info}, 'hello', 'world')

"info":"helloworld"

"worldworld"

upper(字段)

将字段中英文字母全部转为大写

upper(${name})

"name":"mike"

"MIKE"

lower(字段)

将字段中英文字母全部转为小写

lower(${name})

"name":"JOHN"

"john"

initcap(字段)

将字段中英文首字母转为大写

initcap(${city})

"city":"hangzhou"

"Hangzhou"

coalesce(字段1,字段2, ...)

返回字段1,字段2, ...中第一个不为空的字段

coalesce(${name},${名字}, ${中文名} ...)

"name":" ",

"名字":" ",

"中文名”:"小明”

“小明”

parse_array(字段)

尝试将字段值解析为一个列表

parse_array(${list})

"list":["item1","item2"]

['item1','item2']

array_get(字段, int index)

获取列表类型的字段中的第index个值(index从0开始)

array_get(parse_array(${list}), 0)

"list":["item1","item2"]

"item1"

regexp_extract_all(字段, string pattern, int index)

提取出字段值中与正则表达式pattern匹配的子串。第三个参数index为可选参数,表示获取正则表达式匹配到的第index个捕获组。注意,index=0表示返回整个匹配的子串,index=1表示返回第一个捕获组。

regexp_extract_all(${info}, '(he)ll(o)', 1)

"info":"helloworld"

"he"

相关文档