Microsoft Word:使用通配符查找所有带有两个“m”的单词

Microsoft Word:使用通配符查找所有带有两个“m”的单词

如何在 Microsoft Word 文档中查找包含两个或更多“m”的每个单词,例如“mermaid”、“mommy”等?

我曾尝试使用通配符查找<[! ]@m*>,这会找到所有包含至少一个“m”的单词,但我不知道如何找到包含两个“m”的单词。

答案1

我试图解决这个问题,但无法找到一个合理的答案。但由于没有其他人提供任何答案,我给你一个不合理的答案:

针对以下模式进行六次单独搜索:

  • <[Mm][! ]@m>
  • <[Mm][! ]@m[! ]@>
  • <[! ]@mm>
  • <[! ]@mm[! ]@>
  • <[! ]@m[! ]@m>
  • <[! ]@m[! ]@m[! ]@>

这些对应于以下单词模式:

  • 某物
  • 某物 某物
  • 某物 1
  • 某物 某物
  • 某物 某物
  • 某物 某物 某物

严格来说,您还应该搜索<[Mm]m><[Mm]m[! ]@>,但它们与单词“mm”以及以“mm”开头的单词匹配,而这些单词不存在(除非您包含首字母缩略词)。

请注意,前两个模式以 开头[Mm],这样即使单词是大写的,它们也能匹配(因为通配符搜索区分大小写)。如果您的单词可能全部大写,则应将m模式中的所有 替换为[Mm]

另外,我按照您的示例使用[! ](空格以外的任何字符)作为“单词”字符。这确实是一个糟糕的选择;这意味着除空格之外的任何连续字符都可以算作一个单词。糟糕的示例包括“bumper-to-bumper”、“miles/minute”和“rum&molasses”。使用[A-Za-z](后面跟 )作为单词字符会更安全@

PS 我承认这不是一个很实用的答案。有一件事可能会让它变得可以忍受,那就是编写一个 VBA 例程来尝试所有六种(或八种)模式。______________ 1似乎没有任何以“mm”结尾的实际英文单词,但此模式将匹配“Grimm”和“Hamm”等名称,以及“comm”和“DIMM”等缩写(如果您使用 
匹配大写或小写的“M”)。
[Mm]

相关内容