这是我工作的一部分。为了使学生论文遵循给定的格式标准,我必须判断学生论文中的参考类型,将其项目(作者,标题,杂志名称,年份等)分开,然后在缺少某些项目时给出修改建议。这很乏味,所以经过几年的工作,我太累了。我想通过编程来做到这一点。
在一篇论文中,将有许多参考文献被引用,例如,Journal论文,Dissertation论文,book等。它们具有不同的格式。 另一方面,如果我向不同的期刊提交论文,也许我必须采用不同的格式
我正在寻找算法(您可以阅读我以前使用正则表达式的尝试。但是,当使用多种格式时,显然会失败。python re can't find this grouped name),它可以
以下仅是日记纸格式的示例。我们发现很难通过简单的字符串匹配来理解它们。
[example 1] Duan,C., X.Meng, C.Tu. How to make local image features more efficient and distinctive[J].IET Computer Vision,2008,2(3):178-189.
我们发现有3位作者(“ Duan,C。”,“ X.Meng”,“ C.Tu”)的名字用逗号分隔,但是逗号也用在一个人的名字中(“ Duan” ,C。”)。因此,实际上很难使用正则表达式来判断人们的姓名
[example 2] Harris,C. & M.Stephens. A combined corner and edge detector[J]. Alvey Vision Conference,1988,5(7):147-151.
&用于分隔两个名称,但是我们可以发现也许有人将其写为Harris,C., M.Stephens
如果我们使用MLA格式(Autocite a Journal in MLA Format)
[example 3] Fearon, James D., and David D. Laitin. "Ethnicity, Insurgency, and Civil War." American Political Science Review 97.01 (2003): 75. Print.
我们可以发现这并不使用[J]
,但是如果遵循模式Last, First M., and First M. Last. "Article Title." Journal Title Series Volume. Issue (Year Published): Page(s). Print.
,我们可以说它是期刊论文。我们可以用其他格式“翻译”它:
Fearon, James D., David D. Laitin. Ethnicity, Insurgency, and Civil War[J]. American Political Science Review. 2003 97(01): 75
其中75表示该论文只有一页,即75。
对于IEEE格式(IEEE Style: Journal Articles),我们发现vol,pp等对于上述格式不是必需的
[example 4, IEEE format]G. Liu, K. Y. Lee, and H. F. Jordan, "TDM and TWDM de Bruijn networks and shufflenets for optical communications," IEEE Trans. Comp., vol. 46, pp. 695-701, June 1997.
如果我们阅读
[example 4, missing pages] G. Liu, K. Y. Lee, and H. F. Jordan, "TDM and TWDM de Bruijn networks and shufflenets for optical communications," IEEE Trans. Comp., vol. 46, June 1997.
我们应该告诉用户通过添加页面来检查并完成