文章或论文中有很多小标题或式子或图表,需要添加序号,例如图1,图2,图3…,当然可以手动单个添加,有无可能一下搞定呢?
唐库专门设计了此功能,使用正则表达式,可以为任意关键词添加连续序号。
原文如下,想在每行最前面加上需要“一,”,“二,”,“三,”等。
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 (将捕获内容转为小写)
len 返回捕获组匹配的字符的个数
例如:
注意:“ (??<toupper?>[a-z])” 和 “ $@1” 最前面都有一个空格符号。
唐库的查找替换还有更强大的功能,与AI结合,可以批量生成标题,生成简介等等。