这个问题和下面的例子非常相关。
仅删除 model5-names.bst (elsarticle.cls) 中参考书目中 doi 和 url 后的句号
我想使用 biblatex 删除 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。
梅威瑟:
\documentclass{article}
\usepackage[
backend = biber,
style = authortitle,
]{biblatex}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@article{a,
author = {Lily},
title = {Trees},
journaltitle = {Journal of Trees},
year = {2015},
}
@article{b,
author = {John},
title = {Flowers},
journaltitle = {Journal of Flowers},
year = {2015},
doi = {17.7-31893.23},
}
\end{filecontents*}
\addbibresource{\jobname.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
答案1
我会想一个更聪明的办法,但与此同时尝试
\renewcommand*{\finentrypunct}{\ifboolexpr{togl {bbx:doi} and not test {\iffieldundef{doi}}}{}{\addperiod}}