首页 > 解决方案 > 在 Power Query 的每一行中检查特定字符的出现

问题描述

我有一个用 Excel 准备的简单表格

+---------------+
|     name      |
+---------------+
| ST-PL-100-1   |
| ST-PL-700     |
| ST-PL-100-14  |
| ST-PL-100-6   |
| ST-PL-100     |
| ST-PL-300     |
| ST-PL-100-632 |
+---------------+

我想显示只有 2 个破折号的行。

我的预期结果:

ST-PL-700
ST-PL-100
ST-PL-300

标签: excelpowerquery

解决方案


添加自定义列以确定破折号的数量。然后过滤2

自定义列公式:

Text.Length([name])-Text.Length(Text.Replace([name],"-",""))

执行过滤后,您可以删除“dashCount”自定义列,这样当您将查询加载回工作表时它不会显示。

顺便说一句,这也可以在本机 Excel 中使用高级过滤器,使用公式标准来完成

=LEN(firstDataCell)-LEN(SUBSTITUTE(firstDataCell,"-",""))=2


推荐阅读