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

Power Query/Power BI M 实现多缩写词的文本匹配、筛选及结果提取

Power BI M语言实现缩写词匹配筛选方案

该需求可以通过Power Query M语言原生功能实现,无需额外插件,具体实现步骤如下:

前置准备

  • 首先将你的目标缩写词列表转换为M语言的列表格式,若你拿到的是逗号分隔的字符串,可通过以下代码处理:
    // 示例缩写词字符串转列表,你可以替换为自己的数据源
    TargetAcronyms = List.Transform(Text.Split("AAA, BBB, XXXX, YYY", ","), each Text.Trim(_))
    
  • 确认你的源数据表已导入Power Query,且包含需要匹配的文本描述字段(示例中字段名为描述字段,可替换为你的实际字段名)

步骤1:新增自定义列提取匹配缩写

在源数据表中添加自定义列,列名可设为匹配到的缩写词,使用如下公式:

Text.Combine(
  List.Select(
    TargetAcronyms,
    (acr) => Text.Contains([描述字段], acr, Comparer.OrdinalIgnoreCase)
  ),
  ", "
)

参数说明:Comparer.OrdinalIgnoreCase代表忽略大小写匹配,若需要严格区分大小写可删除该参数。
若需要精确整词匹配(避免缩写为AAA时,文本中AAAA也被误识别),可改用正则匹配的公式:

Text.Combine(
  List.Select(
    TargetAcronyms,
    (acr) => Text.Regex.IsMatch([描述字段], "\b" & Text.RegexEscape(acr) & "\b", RegexOptions.IgnoreCase)
  ),
  ", "
)

步骤2:筛选包含匹配缩写的记录

添加筛选步骤,保留匹配到的缩写词列不为空的行即可,对应M代码示例:

FilteredTable = Table.SelectRows(上一步骤名称, each [匹配到的缩写词] <> "")

特殊场景适配

你示例中描述字段包含<strong>这类HTML标签不影响匹配逻辑,M的文本匹配函数会直接检索标签内的文本内容,无需额外预处理标签。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 15:36:02