在Microsoft Word 2013中查找并替换为Regex

nmpmafwu  于 2023-08-08  发布在  其他
关注(0)|答案(3)|浏览(129)

我正在编辑一个有很多不必要标记的电子书文档。我在文本中有许多部分的代码与此类似:

<i>Some text here</i>

字符串
我正在尝试运行一个正则表达式查找和替换,它将查找两个i标记之间的任何短语,删除i标记,并对文本应用样式。
以下是我用来搜索的内容:

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


我还选择了Styles > i(斜体)。这告诉我们的转换软件将斜体应用于文本。如果我留下i标签,最终发生的是ScribeNet的转换过程将它们转换为十六进制值,以便它们在电子书中显示为文字文本。太乱了
当我运行此搜索时,我没有得到任何结果。我检查了“使用通配符”。我错过了什么?根据微软的帮助网站,* 用于表示任何数量或类型的字符,单个字符串应该用括号括起来。

t1qtbnec

t1qtbnec1#

要搜索定义为通配符的字符,请在该字符前放置反斜杠(\)。*本身匹配任何字符串,因此使用范围限定符进行匹配(1或更多次)

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

字符串

yh2wf1be

yh2wf1be2#

搜索\<i\>(*{1,})\</i\>并替换为\1。不要忘记检查Use wildcard
这里有一个Word“正则表达式”的参考表:https://web.archive.org/web/20140209231503/http://office.microsoft.com/en-ca/word-help/find-and-replace-text-by-using-regular-expressions-advanced-HA102350661.aspx

  • <>是需要转义的特殊字符
  • *表示任意字符
  • {1,}表示一次或多次
wpcxdonn

wpcxdonn3#

Microsoft Word有一个特殊的工具,称为Multiple Find & Replace(参见http://www.translatortools.net/products/transtoolsplus/word-multiplefindreplace),它允许绕过Word的通配符限制。此工具可以使用标准的正则表达式语法来搜索和替换Word文档中的任何文本。例如,要搜索任何HTML标签,您可以使用<[^>]+>,它将查找打开,关闭和独立的HTML标签。您可以将任意数量的表达式添加到列表中,然后搜索文档中的所有表达式、替换所有内容、查看输入的所有搜索表达式的所有匹配项、仅替换选定的匹配项以及其他一些操作。
我为翻译和编辑创建了它,但它对Word中的任何高级搜索/替换操作都很棒,我相信你会发现它非常有用。
斯坦尼斯拉夫

相关问题