有没有办法在 MS Word 文档中搜索模式?

有没有办法在 MS Word 文档中搜索模式?

有没有办法在 MS Word 文档中查找模式而不是完全匹配?

我有一份文档,其中所有小数都写成/而不是.。例如,1.02被写成1/02,因为波斯语印刷术使用/而不是.作为小数点。

由于/它不仅用于小数,而且还具有其他应用,例如分数,百分数等,有没有办法找到像N/M在 Word 文档中一样的模式,其中N表示小数并M显示另一个小数?

答案1

例如 Word 文档中的“N/M”,其中 N 表示小数,M 还显示另一个小数

仅用于搜索,您可以将^#/^#其用作搜索参数。在更多的选项,以及找到特别的,还有一些其他选项可能会有帮助。

Nb:,^#是小数点后一位,因此如果您专门查找 x/yy,那么它就是^#/^#^#等。

取代,

这是一个更好的选择,用 执行搜索([0-9])/([0-9])并替换\1.\2,并启用“使用通配符”

答案2

单词

使用 Microsoft 的正则表达式实现

CTRL+ H» 点击更多的“ 使能够使用通配符

  • 找什么:([0-9]{1,2})/([0-9]{2})
  • 用。。。来代替:\1.\2

在此处输入图片描述 在此处输入图片描述

这看起来像一个疯狂的搜索模式,所以让我们检查一下:

  • [0-9]代表单个数值(0、1、2、3、4、5、6、7、8 和 9)

  • {1,2}用于计算前一个字符或表达式的出现次数。在我们的例子中,这意味着:仅搜索一个或两个数字

    警告:如果你使用的是德语单词,则必须使用;作为分隔符,而不是,

  • /没有特殊含义。它实际上是搜索斜线

  • ()圆括号很重要。它们将模式划分为逻辑序列,以便我们稍后可以在替换模式中使用\1, \2...。\n这样我们就可以保留值

阅读更多内容表情,一点一点在微软的支持文章中或在格雷厄姆市长之言网站


VBA(更好的解决方案)

我建议你使用更符合其他 RegEx 引擎默认设置的 VBA 方法。它们是更好地记录这样就会有更多的人来帮助你。

此宏要求使用 RegEx 模式在整个文档中进行搜索并将其替换为给定的字符串。

ALT+F11打开 VBA 编辑器。将代码粘贴到任意位置并使用以下命令执行F5

Sub RegexReplace()
    
    Dim RegEx As Object
    Set RegEx = CreateObject("VBScript.RegExp")    
    On Error Resume Next

    RegEx.Global = True
    RegEx.Pattern = InputBox("Find what:")
    ActiveDocument.Range = _ 
        RegEx.Replace(ActiveDocument.Range, InputBox("Replace with:"))        
    
End Sub
  • 找什么:(?!\d)/(?=\d)
  • 用。。。来代替:.

在此处输入图片描述在此处输入图片描述

相关内容