匹配 Google 表格中字符串末尾的部分文本

ele*_*ile 4 regex google-sheets array-formulas google-sheets-formula

我的Google 电子表格中有数据,需要将其与其标准国家/地区代码相匹配。对于例如Greater Chicago Area将是US。对于所有需要标记为 US 的单元格,它们似乎都以单词 结尾Area。对于所有其他国家/地区,它们以国家/地区名称结尾。
我尝试了以下公式,但它似乎不起作用 -

=IFS(ISNUMBER(FIND("Area",A64)), "US", ISNUMBER(FIND("*United Kingdom",A64)), "UK")

有没有办法匹配字符串末尾的部分文本?

Nat*_*Kam 6

如果您只想按名称查找,那么这里就是答案,我没有使用国家/地区代码,但您可以轻松地进行查找替换搜索或从另一个范围定义 vlookup。

列标题中列出公式的答案电子表格 - https://docs.google.com/spreadsheets/d/1KOYWwqY_T8aG0USy5POVLjAdl99N2PrwWs5mpQAruRg/edit?usp=sharing

脚步:

  1. 从您的pastebin粘贴区域数据
  2. 字符串是否以“区域”结尾,使用=right(A2,4)="Area" // 让我们知道几乎所有美国的情况
  3. 使用 // 查找逗号索引=find(",",A2) 让我们查找数组中的最后一个单词
  4. 使用 // 查找逗号右侧的字符=LEN(A2)-C2 告诉逗号右侧有多少个字母(最后一个单词 + 一个空格)
  5. 使用 // 为空间减去 1 =D2-1 // 您可以用于Trim()非标准化数据,但对于您的用例 -1 效果很好
  6. 逗号右边的所有内容都使用=right(A2,E2) // 最后一个词
  7. 国家/地区名称使用=if(B2,"United States of America",F2) // 如果它以美国区域结尾,否则将其设置为字符串中的最后一个单词
  8. 特殊情况处理使用 =if(ISERR(F2),G2,if(G2="TN","United States",if(G2="TN","United States of America",if(G2="Zhejiang, China","China",if(F2="Canada Area","Canada",G2))))) // 需要覆盖的特殊情况。
  9. Vlookup for Country Code =vlookup(H2,'Country Codes'!A:B,2,false) /// 将根据提供的KEY在搜索范围的S列中查找国家代码。

如果您需要为演示文稿清理此内容,只需将所有单元格引用替换为该单元格中的公式,直到完全嵌套回 A 列。