1. 概述
1.1 预期效果
有时需要从最后一个指定的字符的位置,截取后面的字符串,例如要从路径中截取出文件名,如下图所示:
1.2 实现思路
通过函数反转将最后一个指定字符变成第一个指定字符;
再找出这个字符的位置,然后截取。
2. 示例
2.1 模板设计
1)将数据集字段拖到单元格 A2 ,如下图所示:
2)依次选中 B2~F2 单元格,设置形态公式,如下表所示:
单元格 | 公式 | 作用 |
---|---|---|
B2 | split(A2,"") | 目标字符串分割成单个字符数组 |
C2 | REVERSEARRAY(B2) | 用 REVERSEARRAY( ) 函数将上一步的结果进行反转 |
D2 | INARRAY("/",C2) | 用 INARRAY( ) 取出指定字符第一次出现的位置 |
E2 | RIGHT(A2,D2-1) | 用 right( ) 函数截取右边字符 |
F2 | RIGHT(A2,INARRAY("/",REVERSEARRAY(SPLIT(A2,"")))-1) | 整合B2~E2单元格 |
公式说明:
1)将目标字符串分割成单个字符数组,分隔符为空:split(目标字符串,""),效果如下图所示:
2)利用 REVERSEARRAY( ) 函数将上一步的结果进行反转:REVERSEARRAY(上一步结果),效果如下图所示:
3)利用 INARRAY( ) 取出指定字符第一次出现的位置:INARRAY("/",上一步结果),效果如下图所示:
4)利用 right( ) 函数截取右边字符:RIGHT(目标字符串,上一步结果-1),效果如下图所示:
5)综合起来就是:RIGHT(目标字符串,INARRAY("/",REVERSEARRAY(SPLIT(目标字符串,"")))-1),效果如下图所示:
2.2 效果预览
2.2.1 PC端
保存模板,点击「PC端预览」,如下图所示:
2.2.2 移动端
3. 模板下载
已完成模板,可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\function\从最后一个指定字符截取字符串.cpt。
点击下载模板:从最后一个指定字符截取字符串.cpt