正则表达式在MS Word中不起作用

时间:2018-01-24 15:25:38

标签: vba ms-word

我在word文档中包含了文本标记。 如果标记包含有效文本或任何有效动态字段,则正则表达式有效:

enter image description here

但搜索引擎找不到包含无效交叉引用的第二行......而我需要实际查找并删除它。

在25/01/2018编辑:

感谢您的回答。

  1. 我从宏开始搜索,这是对的。我没有宏的错误,序列[SP] 无效的参考 [\ SP]是找不到的
  2. 我实际上想在两个标记(表格,图像,文本,参考,字段......)之间选择任何 包括标记

1 个答案:

答案 0 :(得分:0)

通过通配符搜索找不到字段是不可能的。通过搜索没有通配符的^ d,我也找不到错误字段。

因此:在代码中使用两个循环。在搜索[SP]之前,迭代所有字段,识别出错并用空格删除/替换:

Dim fld As Field, ran As Range

For Each fld In ActiveDocument.Fields
    If InStr(1, fld.Result.text, "Erreur !") >= 0 Then
        Set ran = fld.Result
        fld.Delete
        ran.InsertAfter " "
    End If
Next fld

之后,对[SP] ... [/ SP]运行正常的通配符搜索/替换,你应该没问题。