1. 概述
1.1 预期效果
用户有时需要截取字段中多次出现的某个字符指定位置的字符。
例如用户有字段长度不同的字符,需要截取最后一个「_」后的字符,如下图所示:
或者用户需要截取 A|B|C 字段中 B 列的值,例如用户需要截取所有学历信息,如下图所示:
1.2 实现思路
使用 INDEXOF 、FIND、MID、SUBSTITUTE、RIGHT 等函数组合实现截取字段。
可以使用「字段拆列」功能拆分字段,再选择某一列。
2. 截取最后一个指定字符后的字符
示例数据:截取多次出现的字符后的内容.xlsx
2.1 创建分析表
下载示例数据并上传至数跨境,将数据保存在项目中,点击「创建分析表」,如下图所示:
2.2 截取指定字符
1)点击「+>新增字段>公式」,如下图所示:
2)新增字段命名为「截取最后一个_后的字符」,并输入公式:INDEXOF(SPLIT(字段,"_"),LEN(SPLIT(字段,"_"))-1),点击「确定」,如下图所示:
公式说明:
公式 | 说明 | 结果 |
---|---|---|
SPLIT(字段,"_") | 将字段按照_分割成数组 | 分割前:a_c_r 分割后:[a,c,r] |
LEN(SPLIT(字段,"_"))-1 | 计算字段按照_分割后的数组数-1 | 例如 a_c_r 的计算结果为 2 |
INDEXOF(SPLIT(字段,"_"),LEN(SPLIT(字段,"_"))-1) | 返回SPLIT()分割后数组在最后一个_后的字符 | 例如 a_c_r 的计算结果为 r |
2.3 效果展示
虽然字段有长度不同的字符,也可以截取最后一个「_」后的字符,如下图所示:
3. 截取A|B|C 字段中 B 列的值
示例数据:招聘信息.xlsx
3.1 创建分析表
下载示例数据并上传至数跨境,将数据保存在项目中,点击「创建分析表」,如下图所示:
3.2 方法一:截取指定字符
1)点击「+>新增字段>公式」,如下图所示:
2)新增字段命名为「截取中间的字符」,并输入公式:INDEXOF(SPLIT(地区学历人数,"|"),1) ,点击「确定」,如下图所示:
公式说明:
公式 | 说明 |
---|---|
SPLIT(地区学历人数,"|") | 将地区学历人数字段根据 | 字符进行划分 例如:「深圳|本科|招5人」变成[ 深圳,本科,招5人 ] |
INDEXOF(SPLIT(地区学历人数,"|"),1) | 返回划分结果字符串第二个位置上的内容 例如:[ 深圳,本科,招5人 ]返回「本科」 |
3.3 方法二:字段拆列
1)如果需要截取 A|B|C 或者 A、B、C 中的 B 列,还可以使用「字段拆列」功能,如下图所示:
2)将「地区学历人数」字段按分隔符「|」拆分成 3 列,如下图所示:
3)这样就可以拆分得到「学历」一列,再重命名字段即可,如下图所示:
3.3 效果展示
用户可以截取到 A|B|C 字段中 B 列的值,如下图所示: