Google Sheets 指定文本匹配时删除后续内容直至目标文本的方法咨询
Google Sheets 数据对齐处理方案
你可以直接使用下方数组公式实现需求,将公式粘贴到B1单元格即可自动填充整列结果:
=BYROW(A:A,LAMBDA(r,IF(r="",, LET( split_arr,SPLIT(r,"请替换为你实际使用的分隔符",), first_seg,INDEX(split_arr,1,1), // 判断首段是否包含formed has_formed,ISNUMBER(SEARCH("formed",first_seg)), IF(NOT(has_formed),split_arr, // 定位yellow开头的内容位置 yellow_pos,XMATCH("yellow*",split_arr,2), // 输出时首位留空让yellow内容对齐到C列 IFERROR(HSTACK("",DROP(split_arr,,yellow_pos-1)),) ) ) )))
注意事项
- 请先把公式里的
请替换为你实际使用的分隔符改成你拆分主列文本时用的分隔字符 XMATCH("yellow*",split_arr,2)中的参数2代表开启通配符匹配,可识别所有以yellow开头的内容- 如果你需要匹配“formed”时区分大小写,可把公式里的
SEARCH替换为FIND - 如果你的Google Sheets版本不支持LAMBDA系列函数,可使用单行公式,粘贴到B2单元格后下拉填充即可:
=LET( split_arr,SPLIT(A2,"请替换为你实际使用的分隔符"), IF(ISERROR(SEARCH("formed",INDEX(split_arr,1,1))), split_arr, IFERROR(HSTACK("",DROP(split_arr,,XMATCH("yellow*",split_arr,2)-1)),) ) )
内容的提问来源于stack exchange,提问作者Dan
相关产品推荐
相关产品推荐

