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

Google Sheets中REGEXREPLACE捕获组失效,如何提取最后一个-后的内容?

解决Google Sheets提取最后一个“-”后内容的问题

原公式的问题

你使用的公式=REGEXREPLACE(A2," ([\w\/ ]+)$", "$1")逻辑完全偏离需求:这个正则是匹配单元格末尾以空格开头、由字母/斜杠/空格组成的片段,然后将整个单元格内容替换为该片段——它根本没针对“最后一个'-'”做处理,所以会保留前半部分内容。

正确公式方案

方案1:用REGEXEXTRACT直接提取(推荐)

根据你的路径格式选择对应公式:

  • 如果最后一个“-”和目标内容间有空格(例:Parent/Child Folder - Death Certificate):
    =REGEXEXTRACT(A2,"- (.+)$")
    
  • 如果最后一个“-”和目标内容间无空格(例:Parent/Child Folder-Radiology):
    =REGEXEXTRACT(A2,"-(.+)$")
    
  • 兼容两种情况(自动适配有无空格):
    =REGEXEXTRACT(A2,"- ?(.+)$")
    
    其中?表示“-”后的空格是可选的(0或1个)。

方案2:用REGEXREPLACE替换掉前半部分

如果想用REGEXREPLACE实现,思路是删除最后一个“-”及之前的所有内容:

=REGEXREPLACE(A2,".*- ?","")

.*会匹配到最后一个“-”(正则默认贪婪匹配),再加上可选的空格,替换为空后就只剩目标内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 07:22:33