我找到了各种方法来从某些条目类型中删除字段。我需要从一些条目 但不是其他相同类型的。我尝试在 biblatex 手册中查找是否可以通过其键选择条目,但没有成功。有没有办法在 biber 或 biblatex 级别执行此操作?
答案1
您可以使用\iffieldequalstr{entrykey}{<key>}
键来选择条目<key>
。
\AtEveryBibitem{%
\iffieldequalstr{entrykey}{tric}
{\clearfield{url}\clearfield{urlyear}}
{}%
}
删除名为 的条目的 URL 和 URL 日期tric
。
如果你想按类型使用
\AtEveryBibitem{%
\ifentrytype{article}
{\clearfield{url}\clearfield{urlyear}}
{}%
}
这将删除 s 的 URL 和 URL 日期@article
。
或者,您可以使用 Biber 的源映射。源映射的优点是数据在输入级别被删除。这样就不会考虑各种额外的计算,如labelyear
、labelname
等。
您可以通过匹配entrykey
\DeclareSourcemap{
\maps{
\map{
\step[fieldsource=entrykey, match=\regexp{\Actan\Z}, final]
\step[fieldset=url, null]
\step[fieldset=urldate, null]
}
}
}
对于特定类型的映射使用\pertype
。
\DeclareSourcemap{
\maps{
\map{
\pertype{article}
\step[fieldset=url, null]
\step[fieldset=urldate, null]
}
}
}