You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

谷歌表格:解决REGEXMATCH无法区分相似单词的匹配问题

解决方案

一、精确判断单词是否存在(区分"TV"和"TV remote")

原公式直接匹配列名文本会误命中包含该文本的子串,要实现精确匹配逗号分隔的独立单词,需构造匹配完整分隔项的正则表达式,确保只匹配前后被逗号(或字符串首尾)包裹的目标单词。

修改后的公式:

ARRAYFORMULA(IF(L1="","",IF(REGEXMATCH($K$2:$K,"(?:^|,\s*)"&L$1&"(?:\s*,|$)"),"Wybrano","")))

正则逻辑说明:

  • (?:^|,\s*):匹配字符串开头,或逗号加任意数量空格(兼容逗号后带空格的格式)
  • L$1:要匹配的目标列名(精确单词)
  • (?:\s*,|$):匹配任意数量空格加逗号,或字符串结尾(兼容单词后带空格加逗号的格式)

此逻辑会精准匹配独立的"TV",不会误识别"TV remote"这类包含"TV"的长词汇。

二、统计特定单词的出现次数

若需统计目标单词在逗号分隔字符串中的出现次数,可通过拆分字符串后计数实现,逻辑更直观:

公式:

ARRAYFORMULA(IF(L1="","",BYROW($K$2:$K,LAMBDA(x,COUNTIF(TRIM(SPLIT(x,",")),L$1)))))

逻辑说明:

  1. SPLIT(x,","):将每行的逗号分隔字符串拆分为单个词汇的数组
  2. TRIM(...):去除每个词汇前后的空格(兼容字符串内的空格格式)
  3. COUNTIF(...,L$1):统计数组中与目标列名一致的词汇数量
  4. BYROW(...):对每行数据单独执行统计逻辑
  5. ARRAYFORMULA:批量应用到整列数据

内容的提问来源于stack exchange,提问作者Kasia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 13:45:29