【问题标题】:Find and Replace with Regex in Microsoft Word 2013在 Microsoft Word 2013 中使用正则表达式查找和替换
【发布时间】:2014-08-10 02:32:32
【问题描述】:

我正在编辑包含大量不必要标记的电子书文档。我在文本中有许多部分的代码类似于:

<i>Some text here</i>

我正在尝试运行正则表达式查找和替换,它将在两个 i-tags 之间找到任何短语,删除 i-tags,并将样式应用于文本。

这是我用来搜索的内容:

Find: (<i>)(*)(</i>)
Replace: \2

我也在选择样式> i(斜体)。这告诉我们的转换软件将斜体应用于文本。如果我留下 i-tags,最终发生的是 ScribeNet 的转换过程将它们转换为十六进制值,以便它们在电子书中显示为文字文本。凌乱。

当我运行此搜索时,我没有得到任何结果。我检查了“使用通配符”。我错过了什么?根据微软的帮助网站,* 用于表示任意数量或类型的字符,单个字符串应该用括号括起来。

【问题讨论】:

    标签: regex string replace ms-word


    【解决方案1】:

    有一个用于 Microsoft Word 的特殊工具,称为多重查找和替换(请参阅 http://www.translatortools.net/products/transtoolsplus/word-multiplefindreplace),它可以解决 Word 的通配符限制。此工具可以使用标准正则表达式语法来搜索和替换 Word 文档中的任何文本。例如,要搜索任何 HTML 标记,您只需使用 ]+> 即可找到开始、结束和独立的 HTML 标记。您可以将任意数量的表达式添加到列表中,然后在文档中搜索所有这些表达式、替换所有内容、查看输入的所有搜索表达式的所有匹配项、仅替换选定的匹配项等等。

    我为翻​​译和编辑创建了它,但它非常适合 Word 中的任何高级搜索/替换操作,我相信您会发现它非常有用。

    斯坦尼斯拉夫

    【讨论】:

      【解决方案2】:

      要搜索定义为通配符的字符,请在该字符前放置一个反斜杠 (\)。 * 本身匹配任何字符串,所以使用范围量词来匹配(1 或更多次)

      Find: \<i\>(*{1,})\</i\>
      Replace: \1
      

      【讨论】:

        【解决方案3】:

        搜索\&lt;i\&gt;(*{1,})\&lt;/i\&gt; 并替换为\1。别忘了查看Use wildcard

        这里有Word的“正则表达式”参考表:http://office.microsoft.com/en-ca/word-help/find-and-replace-text-by-using-regular-expressions-advanced-HA102350661.aspx

        • &lt;&gt; 是需要转义的特殊字符
        • * 表示任意字符
        • {1,} 表示一次或多次

        【讨论】:

        • @Vache 也感谢您的帮助。 hwnd 在你之前就有了答案,所以我觉得给他绿色支票是合乎道德的,但是一旦我有 15 名声望,我就会对你的两个答案都投赞成票! :) 祝你有美好的一天。
        • 对于其他寻找如何在 Word 中执行正则表达式的人来说,上面的链接很有帮助,但该页面上没有任何类型的综合表格。这是桌子——我找到了。我发帖是为了节省你们中的一些人的时间和挫败感,我一直在寻找comprehensive regex 参考。 msdn.microsoft.com/en-us/library/…
        • 我必须修改我之前的声明,您可以通过匹配上一行的结尾来匹配行首。 This page 有更多细节,但基本上你可以将一些字符与 ^13 之类的字符串匹配(这是段落结束标记)。
        • @SalathielGenèse 也许,但这不是这个问题的答案。我猜可能会做一个问题和自我回答。
        • 请记住,如果您不在美国,您可能在 Windows 中设置了不同的 文化。不幸的是,Word 会根据 Office 设置更改通配符,因此“一次或多次”将变为 {1;}(注意分号)
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-04-28
        • 2016-09-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多