我在打印参考书目时遇到了麻烦。
我有一个像这样的 bib 文件
@Article{Sample:01,
Title = {Some Title},
Author = {Doe, John},
Year = {111},
Pages = {pp. 1-2},
Journal = {Really Cool Journal},
}
@Article{Sample:02,
Title = {Different Title},
Author = {Doe, Jane},
Year = {222},
Pages = {3-4},
Journal = {Other Cool Journal},
}
我将其与biblatex
和 一起使用biber
。
但是,我的参考书目对于第二种类型打印正确,但对于第一种类型打印不正确(即第 3-4 页),而在第二种情况下,它只说页面。
我得到了这种不统一风格的页面列表,因为我收集了来自不同互联网来源的引用,有时是第一种类型,有时是第二种类型。
有什么办法我可以告诉 biber 忽略任何页在列表中页面并始终打印出来页面 ab?
到目前为止,我的解决方法是手动更改列表并删除页不过,我觉得一定有某种方法可以自动完成这一操作。
到目前为止我还没找到。有人知道吗?
记录一下:我正在使用 MikTex 2,9 并pdflatex
通过latexmk
包调用进行编译。
这是一个最小的工作示例,它会导致上述 bib 文件在同一文件夹中存储为 mybib 时出现错误。
\documentclass{scrartcl}
\usepackage[
backend=biber, natbib
]{biblatex}
\bibliography{mybib}
\begin{document}
\citet{Sample:01}, \citet{Sample:02}
\printbibliography
\end{document}
答案1
你可以让 biber 帮你做这样的替换。我的正则表达式能力最多只能算是差强人意,但我认为这行得通:
\DeclareSourcemap{
\maps[datatype=bibtex,overwrite=true]{
\map{
\step[fieldsource=pages,
match=\regexp{pp\.(.+)},
replace=\regexp{$1}]
}
}
}
答案2
只需使用任何文本编辑器的替换选项将所有“{pp.”替换为“{”!