You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何提取字符串中第三个'/'后的中间字符?SQL处理求助

提取路径中指定分段的Excel公式解法

针对格式为/WM/Operational/Reports/ReportName的字符串,要提取第三个/之后、最后一个/之前的分段(即Reports),可以结合你已有的两种思路,用以下动态公式实现(无需固定字符长度):

通用版公式(兼容多数Excel版本)

=LEFT(RIGHT(A1, LEN(A1) - CHARINDEX("/", A1, CHARINDEX("/", A1, CHARINDEX("/", A1)+1)+1)), CHARINDEX("/", RIGHT(A1, LEN(A1) - CHARINDEX("/", A1, CHARINDEX("/", A1, CHARINDEX("/", A1)+1)+1)))-1)

公式拆解

  1. 定位第三个/的位置:CHARINDEX("/", A1, CHARINDEX("/", A1, CHARINDEX("/", A1)+1)+1) 会依次找到第1、第2、第3个/的位置,替代你之前用的固定长度31,适配不同长度的前缀。
  2. 截取第三个/之后的内容:RIGHT(A1, LEN(A1) - 第三个/的位置) 得到Reports/ReportName这部分。
  3. 移除最后一段内容:对上面的结果用CHARINDEX("/", ...)找到第一个/的位置,再用LEFT(..., 位置-1)截取到该/之前的内容,最终得到Reports。

简化版公式(Excel 365/2021及以上版本)

如果你的Excel支持TEXTAFTER和TEXTBEFORE函数,可以用更简洁的写法:

=TEXTAFTER(TEXTBEFORE(A1, "/", -2), "/", 3)

公式拆解

  1. TEXTBEFORE(A1, "/", -2):取倒数第二个/之前的全部内容,即/WM/Operational/Reports。
  2. TEXTAFTER(..., "/", 3):从上面的结果中提取第三个/之后的内容,直接得到Reports。

内容的提问来源于stack exchange,提问作者BIReportGuy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 16:40:15