MATCH 函数不适用于带有通配符 (*) 的单词

MATCH function does not work with words that have wildcards (*)

我正在尝试将 HA24BB-3-1LL 与 Excel 中的 HA24B*-3-1** 匹配。另一个例子是匹配 HA24FB-3-1LLHA24F*-3-1**

但是,当我执行正则匹配功能时,无法匹配到这些。

   col A             col B
1  HA24BB-3-1LL      HA24F*-3-1**
2  HA24FB-3-1LL      HA24B*-3-1**

我尝试了什么:

=MATCH(A1,B:B,0)

它应该 return 2 但它 returns #N/A.

请问为什么?

我认为 Excel 匹配函数适用于通配符。有没有办法启用它?

您可以使用通配符进行匹配,但通配符必须在您的查找值中(公式中的第一个位置)。如果它们在查找数组中(公式中的第二个位置),则它们不是通配符,只是单元格值中的文字 *s。

因此,您可以使用公式 =MATCH(B1,A:A,0) 在第一列中找到与 HA24B*-3-1** 等字符串的匹配项,但反过来不行,因为您的公式已设置。

此外,如果您要查找与 HA24B[one character]-3-1[two characters] 匹配的内容,您的搜索字符串应该改为 HA24B?-3-1??* 将匹配任意长度的字符串,因此将其中两个放在搜索字符串的末尾是多余的,使用它们也可以找到与 HA24Babcdedfghijklmnopqrstuvwxyz-3-1abcdefghijklmnopqrstuvwxyz 这样的字符串的匹配项。这可能是您想要的,如果它保持原样(减去最后的第二个 *)。 ? 匹配单个字符,我假设这是您要查找的字符,因为您在问题中使用了 **