如何修改Google Sheets公式,保留数字空格且遵循E2单元格条件?
问题与解决方案
问题描述
现有公式(位于黄色单元格)可根据E2单元格(内容为twopoints)的条件从data列提取数字,但输出时会自动去除空格。需修改公式指定部分,让输出的数字保留空格,同时维持依据E2单元格的输出逻辑。
当前公式:
ARRAY_CONSTRAIN(ARRAYFORMULA(IF(REGEXMATCH(MAP(E2;LAMBDA(z;FILTER(TOCOL(A3:C;3);REGEXMATCH(TOCOL(A3:C;3);"(?i)"&z))));)=TRUE;REGEXEXTRACT(MAP(E2;LAMBDA(z;FILTER(TOCOL(A3:C;3);REGEXMATCH(TOCOL(A3:C;3);"(?i)"&z))));"([0-9]+):");));COUNTA(A3:A);1)
修改方案
核心问题出在正则提取规则上:原公式的([0-9]+):仅匹配连续纯数字,会忽略数字间的空格。只需调整正则表达式,将空格纳入匹配范围即可。
修改步骤
- 定位公式中
REGEXEXTRACT函数内的正则串:"([0-9]+):" - 将其替换为
"([0-9\s]+):",其中\s代表匹配任意空白字符(包括空格)
修改后的完整公式
ARRAY_CONSTRAIN(ARRAYFORMULA(IF(REGEXMATCH(MAP(E2;LAMBDA(z;FILTER(TOCOL(A3:C;3);REGEXMATCH(TOCOL(A3:C;3);"(?i)"&z))));)=TRUE;REGEXEXTRACT(MAP(E2;LAMBDA(z;FILTER(TOCOL(A3:C;3);REGEXMATCH(TOCOL(A3:C;3);"(?i)"&z))));"([0-9\s]+):");));COUNTA(A3:A);1)
说明
[0-9\s]+表示匹配1个或多个数字与空格的组合,既能完整提取带空格的数字内容,又不会改变原有的筛选和输出逻辑。
内容的提问来源于stack exchange,提问作者Get Job
相关产品推荐
相关产品推荐

