我怎样才能删除期刊缩写标题中的点并插入空格(“”)?
我必须在命令的替换括号中输入什么?
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldsource=journal, match=\regexp{\.}, replace={ }]
}
}
}
我的编码示例
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[babel, german=quotes]{csquotes}
\usepackage[backend=biber,citestyle=numeric,bibstyle=authoryear,firstinits=true,terseinits=true,maxbibnames=99]{biblatex}
\renewbibmacro{in:}{} %http://projekte.dante.de/DanteFAQ/BiblatexInBeiArticleUnterdr%fccken
\AtEveryBibitem{\clearfield{note}} %http://projekte.dante.de/DanteFAQ/BiblatexFeldUnterdr%fccken
\AtEveryBibitem{\clearfield{url}}
\AtEveryBibitem{\clearfield{number}}
\AtEveryBibitem{\clearfield{abstract}}
\AtEveryBibitem{\clearlist{language}}
%http://de.comp.text.tex.narkive.com/d5x9LIG5/biblatex-anpassung-eines-bibliography-styles
\DeclareFieldFormat{journaltitle}{#1\isdot} %journal titel nicht kursiv
\DeclareFieldFormat[misc]{title}{#1\isdot} %titel bei misc nicht kursiv
\DeclareFieldFormat[article]{pages}{#1} %Seite weglassen.
\DeclareFieldFormat[article]{title}{#1} % keine anführungszeichen um Titel bei allen Artikeln
\renewcommand{\labelnamepunct}{\addcolon\space} % Doppelpunkt nach letztem Autor
%https://tex.stackexchange.com/questions/17583/biblatex-remove-commas-between-last-and-first-names-in-bibliography
\renewcommand*{\revsdnamepunct}{} %Komma zwischen Nachnamen und Vornamen weg
% Schlüssel als Zahlen in eckigen Klammern
\DeclareFieldFormat{bibentrysetcount}{\mkbibparens{\mknumalph{#1}}}
\DeclareFieldFormat{labelnumberwidth}{\mkbibbrackets{#1}}
\defbibenvironment{bibliography}
{\list
{\printtext[labelnumberwidth]{%
\printfield{prefixnumber}%
\printfield{labelnumber}}}
{\setlength{\labelwidth}{\labelnumberwidth}%
\setlength{\leftmargin}{\labelwidth}%
\setlength{\labelsep}{\biblabelsep}%
\addtolength{\leftmargin}{\labelsep}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}}%
\renewcommand*{\makelabel}[1]{\hss##1}}
{\endlist}
{\item}
\DeclareNameAlias{sortname}{last-first}
% Doppelpunkt nach journal
%https://tex.stackexchange.com/questions/249010/adding-comma-after-journal-name-in-biblatex
\renewbibmacro*{journal+issuetitle}{
\usebibmacro{journal}%
\setunit*{\addcolon\space}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}%
\setunit{\addspace}}%
\usebibmacro{volume+number+eid}%
\setunit{\addspace}%
\usebibmacro{issue+date}%
\setunit{\addcolon\space}%
\usebibmacro{issue}%
\newunit}
% mit terseinits=true in den Optionen für biblatex -> enfernt die Punkte nach den Initialen
%https://tex.stackexchange.com/questions/65438/removing-full-stop-after-first-name-initial-in-biblatex-for-all-authors
\renewbibmacro*{name:last-first}[4]{
\ifuseprefix
{\usebibmacro{name:delim}{#3#1}%
\usebibmacro{name:hook}{#3#1}%
\ifblank{#3}{}{%
\ifcapital
{\mkbibnameprefix{\MakeCapital{#3}}\isdot}
{\mkbibnameprefix{#3}\isdot}%
\ifpunctmark{'}{}{\bibnamedelimc}}%
\mkbibnamelast{#1}\isdot
\ifblank{#4}{}{\bibnamedelimd\mkbibnameaffix{#4}\isdot}%
% \ifblank{#2}{}{\addcomma\bibnamedelimd\mkbibnamefirst{#2}\isdot}}% DELETED
\ifblank{#2}{}{\bibnamedelimd\mkbibnamefirst{#2}\isdot}}% NEW
{\usebibmacro{name:delim}{#1}%
\usebibmacro{name:hook}{#1}%
\mkbibnamelast{#1}\isdot
\ifblank{#4}{}{\bibnamedelimd\mkbibnameaffix{#4}\isdot}%
% \ifblank{#2#3}{}{\addcomma}% DELETED
\ifblank{#2}{}{\bibnamedelimd\mkbibnamefirst{#2}\isdot}%
\ifblank{#3}{}{\bibnamedelimd\mkbibnameprefix{#3}\isdot}}}
\DeclareNameAlias{sortname}{last-first}
% Zuerst das Datum aus dem Autor entfernen:
\renewbibmacro*{author}{%
\ifboolexpr{
test \ifuseauthor
and
not test {\ifnameundef{author}}
}
{\usebibmacro{bbx:dashcheck}
{\bibnamedash}
{\usebibmacro{bbx:savehash}%
\printnames{author}%
\iffieldundef{authortype}
{\setunit{\printdelim{nameyeardelim}}}
{\setunit{\addcomma\space}}}%
\iffieldundef{authortype}
{}
{\usebibmacro{authorstrg}%
\setunit{\printdelim{nameyeardelim}}}}%
{\global\undef\bbx@lasthash
\usebibmacro{labeltitle}%
\setunit*{\printdelim{nonameyeardelim}}}%
% \usebibmacro{date+extrayear}%
}
% Dann das Jahr am Ende wieder einfügen und den Punkt am Ende weglassen:
\usepackage{xpatch}
\xpatchbibdriver{article}{\usebibmacro{finentry}}{\usebibmacro{date+extrayear}}{}{}
%\DeclareSourcemap{
% \maps[datatype=bibtex]{
% \map{
% \step[fieldsource=journal, match=\regexp{\.}, replace={~}]
% }
% }
%}
%\renewcommand*{\bibpagespunct}{\addspace}
\RequirePackage{filecontents}
\begin{filecontents}{bib.bib}
@article{RefWorks:1,
author={H. Müller and R. Meier and X. Schultze},
year={2013},
title={Möglichkeiten zur Proliferation von Dissertationen},
journal={J.Comp.Neurol.},
volume={55},
pages={11-55},
}
@article{RefWorks:2,
author={K. Schröder},
year={2015},
title={Nobelpreiswürdig},
journal={Paper of Excellence},
volume={1},
number={9},
pages={89-96},
note={viel zusaeztliche Informationen},
keywords={Deutschland; Europa; Literatur; Wissenschaft},
isbn={1524-4539; 0009-7322},
language={eng},
pmid={12485966}
}
\end{filecontents}
\nocite{*} %nur bibliographie ausgeben
\addbibresource{bib.bib}
\begin{document}
\printbibliography
\end{document}
导致
答案1
简单的 \space 命令解决了这个问题。
%\DeclareSourcemap{
% \maps[datatype=bibtex]{
% \map{
% \step[fieldsource=journal, match=\regexp{\.}, replace={\space}]
% }
% }
%}