word 正则表达式 替换

您所在的位置:网站首页 word替换正则表达 word 正则表达式 替换

word 正则表达式 替换

2024-06-28 15:08| 来源: 网络整理| 查看: 265

v2-567634424779f17097d76b4566a24174_1440w.jpg?source=172ae18b word查找指定内容批量替换为或加上自动连续编号(域)

有时候为了方便对文章进行修订,希望在文章里每一个段落的每个句子前进行连续编号。如题是一篇几十万字的文档,如何快速实现这个需求呢?

最终需要实现的效果如下图所示:

v2-32beb711084d54bc3b8d21469f92ade6_b.jpg

这个需求的关键有两个方面,一个是能够实现自动连续编号的域,一个是能够实现查找每一句话的正则表达式。

能够实现自动连续编号的域

在word中能够实现这一功能的域有AutoNum、AutoNumLgl、AutoNumOut和ListNum等。

前三个域仅可以实现每个段落的连续编号,不能实现段落内每个句子的连续编号,且不能调整编号开始的数字。在同一个文档内,AutoNum、AutoNumLgl和AutoNumOut三个域之间是相互影响的,如前面几段使用了AutoNum域进行编号,后面使用AutoNumLgl域进行编号,后面的编号是接续前面AutoNum域的编号的,不是重新开始的。

ListNum可以实现文档内每个句子的自动连续编号。ListNum是一种多级列表域,有四种内置列表。域代码与相应的输出如下。

(1)、{ LISTNUM l 1 }——输出内置默认列表的一级编号“1)”

(2)、{ LISTNUM LegalDefault l 1 }——输出输出内置LegalDefault列表的一级编号“1.”

(3)、{ LISTNUM NumberDefault l 1 }——输出输出内置NumberDefault 列表的一级编号“1)”

(4)、{ LISTNUM OutlineDefault l 1 }——输出输出内置OutlineDefault列表的一级编号“I.”

ListNum域,可以在任意位置设置编号重新以任意数字开始,编号的样式也比较多,而且是多级的编号,使用起来是很方便的。

所以使用第(2)个域代码可以实现上图所示的编号功能。

首先使用快捷键Ctrl+F9,输入一对域代码专用的大括号,然后将代码LISTNUM LegalDefault l 1 写入大括号内,按F9刷新即可得到域结果1.。

如果文档内容较少,那么我们可以手动复制这个域到其他位置,即可实现连续自动编号。

但文档内容多,我们需要将此域用于查找替换对话框中,以实现批量替换。

由于不能直接复制域代码放入替换框中,所以我们输入了第一个域代码后,需要将其剪切,然后在替换框中使用“^c”(剪贴板内容)来代替它。

能够实现查找每一句话的正则表达式

接下来,只要在“查找和替换”对话框中,批量查找每一个句子,并在其前面加上这个域代码即可。根据每个句子总是以文字开头,并以特定的几个标点结尾,写出如下表达式:

查找内容:([!^13^l]*[.?!。!?……])

替换:^c1

勾选“使用通配符”

最后点击“全部替换”即可完成整篇文档每个句子的自动连续编号。

切记,在点击“全部替换”之前,一定要将输入的第一个域代码剪切到剪贴板中,因为替换框中“^c”代表的剪贴板内容。

查找和替换的界面如下图所示。

v2-1696af991782dd3240e1c63849aad81c_b.jpg

以上方法,可以将文档中任意指定字符或内容替换为或加上自动连续编号,并不局限于文首所说的需求。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3