文脉·艺文类聚

首页 › 析疑 › 第 53 问

为什么纪年抽取要设年号白名单,不直接用正则抓「某某年」?

直接用正则抓某某年,会把大量非年号的结构抓进来。例如一云八十这类异文、「在位七十年」这类叙述、八十一年这类数目,都能匹配「某年」的模式,但都不是年号纪年。更麻烦的是,有些句子里的「元年」前面根本不是年号,而是「开元」这样的年号与「元年」黏连,或「高祖元年」这样的庙号加元年。库中最终只收一百零三条,靠的是白名单:先把汉至唐初常见年号列成表,再要求年号二字以上、出现在句读之后或段首,且前后没有「云」「曰」「在位」等干扰字。这样做的代价是漏收,好处是每一条都能回原文核实。类书的纪年层本来就稀疏,若为了数量放宽口径,会把整层变成噪声,反而无法用于任何研究。这也是全书统计的一条通则:宁可少收,不可错收。白名单也不是万全之策:有些年号只出现一次,白名单若漏收,就会整条丢失。当前七十三条是白名单内命中的口径,报告里另列疑似年号但未收的候选,供人工复核,而不是把候选直接入库。白名单之外还有一类半截年号,如「元封」被写成「元封中」元封后,正则只认「年」字,这类就会漏收。当前口径接受这种漏收,因为半截年号的时间精度本就不足,收进来也无法用于年代统计。白名单也可以反过来用:若某年号高频出现而名单漏收,就说明名单需要扩充;这比逐年人工检索高效。名单扩充之后,应重新跑一遍抽取,并把新增条目回原文核对,不能只信数字变多。名单扩充之后,新增条目的门类分布也要一并检查,防止偏收某一部。白名单的口径必须写清楚,否则数字会被误读成全书纪年总数。
纪年与时间卷 1天

« 回到析疑列表 | 共 57 问