![如何从 BibTeX 样式的 doi 字段中删除 http://dx.doi.org 字符串?](https://linux22.com/image/302377/%E5%A6%82%E4%BD%95%E4%BB%8E%20BibTeX%20%E6%A0%B7%E5%BC%8F%E7%9A%84%20doi%20%E5%AD%97%E6%AE%B5%E4%B8%AD%E5%88%A0%E9%99%A4%20http%3A%2F%2Fdx.doi.org%20%E5%AD%97%E7%AC%A6%E4%B8%B2%EF%BC%9F.png)
在我看来,大多数 BibTeX 样式(.bst
文件)都假设doi
BibTeX 数据库(.bib
文件)中的字段在保存时没有http://dx.doi.org/
前缀。然而,许多科学期刊导出带有此前缀的 bibtex 记录,例如,
doi = {http://dx.doi.org/10.1063/1.1408625},
虽然
doi = {10.1063/1.1408625},
符合大多数 BibTeX 风格。
因此,标准 BibTeX 样式无法产生正确的doi
输出。是否可以发明一个bibtex
函数来检查前缀是否http://dx.doi.org/
已存在于doi
字段值中,并且仅在前缀不存在的情况下才将其附加?如果.bst
样式无法进行此类操作,那么它可以将doi
值传递给进行必要检查的 LaTeX 命令。