Google Sheets提取最后一个逗号前完整字符串方法咨询
在Google Sheets中提取单元格最后一个逗号前的字符串
这里提供两种简单可行的方法来实现需求:
方法一:使用正则替换函数(REGEXREPLACE)
直接用正则表达式匹配并移除最后一个逗号及之后的所有内容,公式如下:
=REGEXREPLACE(A1, ",[^,]*$", "")
- 原理:
,[^,]*$会匹配最后一个逗号以及逗号后面直到字符串末尾的所有字符,将这部分替换为空字符串后,就得到最后一个逗号之前的完整内容。 - 示例:当A1内容为
Mon, this is a test, Wed, Sun, Sat, 2001 world时,公式返回Mon, this is a test, Wed, Sun, Sat。
方法二:使用字符串定位组合函数(LEFT+SUBSTITUTE+FIND)
如果对正则不熟悉,可以用基础字符串函数组合实现:
=LEFT(A1, FIND("@", SUBSTITUTE(A1, ",", "@", LEN(A1)-LEN(SUBSTITUTE(A1, ",", ""))))-1)
- 原理:
LEN(A1)-LEN(SUBSTITUTE(A1, ",", ""))计算单元格内逗号的总数量;SUBSTITUTE(A1, ",", "@", 数量)将最后一个逗号替换为特殊字符@;FIND("@", ...)找到这个@的位置;LEFT(A1, 位置-1)截取从开头到@前一位的内容,也就是最后一个逗号之前的字符串。
内容的提问来源于stack exchange,提问作者media10k
相关产品推荐
相关产品推荐

