如何仅在包含 SUM 中包含字符串的单元格的行上使用 REGEXEXTRACT?

How to use REGEXEXTRACT only on rows that contain a cell which contain a string within a SUM?

如果我的数据集是:

|                  H              |   U  |   |   |   |
| 100 Main St, Berkeley, CA       | 0 |   |   |   |
| 200 Other St, San Francisco, CA | 0 |   |   |   |
| 300 This St, Oakland, CA        | 0 |   |   |   |
| 111 That St, San Francisco, CA  |   |   |   |   |

对于包含单词 "San Francisco" 的行,如何获得 D 列中所有值的总和?这个数据集在 Sheet1 上,而我的公式在 Sheet2 上 目前,我使用这个公式来计算所有行的总和,而不考虑它们所在的城市。

=ArrayFormula(sum(iferror(REGEXEXTRACT(Sheet1!U2:U918&".","$?([0-9]+)[.,]")*1)))

但我尝试使用 SUMIF 和 Regexmatch 作为 ArrayFormula 的第一个参数,但都没有用。

更新:

player0 给了我答案(我在它周围加了一个和,让它准确地输出我想要的)。

=SUM(ARRAYFORMULA(QUERY({Onfleet!H2:H, REGEXEXTRACT(TO_TEXT(Onfleet!U2:U), "\d+")*1}, "select sum(Col2) where lower(Col1) contains 'oakland' group by Col1 label sum(Col2)''")))

使用这个公式:

=ARRAYFORMULA(QUERY({Sheet1!H2:H, REGEXEXTRACT(TO_TEXT(Sheet1!U2:U), "\d+")*1}, 
 "select Col1,sum(Col2) 
  where lower(Col1) contains 'san francisco' 
  group by Col1 
  label sum(Col2)''"))