文字处理小功能:为小标题或任意关键词添加连续序号

43 天前
 bigtang
Word 有连续编号功能,标题,公式,图表的序号可以设置连续编号,一旦中间删除或插入新的,后面的序号会自动变化。

我这儿提供的这个功能,不是这个思路,是通过正则表达式定义,为某类关键词批量添加或修改为连续序号,更加灵活,但是需要一点正则表达式知识。

举例:原文如下,想在每行最前面加上需要“一,”,“二,”,“三,”等。

AAA
BBB
CCC
DDD
EEE
...

操作如下:
在唐库编辑界面,点击“全局内容替换”按钮,输入如下信息,如图所示:


下面挨个解释:

\n(?<indexcn>$*)([A-Z])
这是要查找的源字符串,是正则表达式。\n 表示换行符,(?<indexcn>$*)第 1 个捕获组(用小括号括起来的内容叫做捕获组或匹配组,带名称的捕获组格式为(?<name>...)),indexcn 是捕获组的名称,在唐库中有特殊含义,即返回该匹配的中文序号,$ 表示行尾符号,* 表示前面的字符 0 ~多个,$* 目的是想匹配空串,因为捕获组中必须有匹配内容,不能不写(格式要求),这个捕获组匹配空串但是能返回中文序号。([A-Z]) 为第 2 个捕获组,[A-Z] 表示 A-Z 中的任意大写字母。

\n$@1 ,$2 要替换的目标字符串,\n 表示换行符,$@1 表示第 1 个捕获组运算后的结果($1 表示第 1 个捕获组匹配的内容,是空串,$@1 与$1 不同),即 indexcn 返回的中文小写,$2 表示第 2 个捕获组匹配的内容。

点预览替换,可以看到原串,目标串的内容,红字表示匹配部分,点击替换,关闭对话框刷新,文章结果如下:

一,AAA
二,BBB
三,CCC
四,DDD
五,EEE
...

如果不想从一开始,从三开始,如何做呢?
将 indexcn 替换为 indexcn_3 (注意是英文下划线)

如果序号用阿拉伯数字 12345 ,如何做呢?
将 indexcn 替换为 index

唐库支持的命名不仅仅只有 index ,indexcn ,还有:

toupper (将捕获内容转为大写)
tolower (将捕获内容转为小写)

例如:



注意:“ (?<toupper>[a-z])” 和 “ $@1” 最前面都有一个空格符号。

唐库的查找替换还有更强大的功能,与 AI 结合,可以让 AI 做各种分析,例如批量生成标题,生成简介等等。

唐库:tanglib.com

注:唐库是个网站,只能生成网页或导出纯文本。
759 次点击
所在节点    分享创造
1 条回复
unii23i
42 天前
码一个,感觉有需要

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1030448

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX