![仅删除 model5-names.bst (elsarticle.cls) 中参考书目中 doi 和 url 后的句号](https://linux22.com/image/477507/%E4%BB%85%E5%88%A0%E9%99%A4%20model5-names.bst%20(elsarticle.cls)%20%E4%B8%AD%E5%8F%82%E8%80%83%E4%B9%A6%E7%9B%AE%E4%B8%AD%20doi%20%E5%92%8C%20url%20%E5%90%8E%E7%9A%84%E5%8F%A5%E5%8F%B7.png)
elsarticle.cls 中的 model5-names.bst 样式在参考书目中的 DOI 后添加了句号。我想在 DOI 存在时将其删除,但在 DOI 不存在时保留它。
例如:
Kanizsa, G. (1976).主观轮廓。《科学美国人》,234(4), 48–52。
和
Kanizsa, G. (1976).主观轮廓。《科学美国人》,234(4), 48–52. doi:123456789
但不是
Kanizsa, G. (1976).主观轮廓。《科学美国人》,234(4), 48–52。doi:123456789。
谢谢。
答案1
值得注意的是,该样式model5-names
在后面添加了一个句号全部格式化条目,而不仅仅是包含字段的条目。要修改此行为,您需要修改bst 文件中的doi
函数。编辑fin.entry
复制bst 文件的不是原始 bst 文件。
具体来说,你应该将函数从
FUNCTION {fin.entry}
{ add.period$
write$
newline$
}
到
FUNCTION {fin.entry}
{ doi empty$
{ add.period$ }
{ }
if$
write$
newline$
}
这样做将添加一个doi
字段是否为空的测试;add.period$
只有测试为真时才会执行指令。