如何告訴 LaTeX 自動刪除字串中的大括號以與 biblatex 一起使用?

如何告訴 LaTeX 自動刪除字串中的大括號以與 biblatex 一起使用?

我將 biblatex 與參考書目管理器 Referencer 一起使用。我想使用 bib 檔案的 url 欄位連結到該頁面。但是,Referencer 的 url 格式為

url = {{ http://... }}

而不是只有一個大括號的通常格式。 Url 欄位在 biblatex 中按字面解釋,因此我{ http:// ... }在 pdf 中獲得了鏈接,因此它們不起作用。由於每次我透過 Referencer 更改參考書目檔案時,大括號都會重新出現,因此遍歷參考文獻檔案並刪除多餘的大括號對我來說不是解決方案。有沒有辦法告訴 LaTeX 在將結果傳遞給 之前自動刪除大括號\href

答案1

確保您使用的是 biblatex 2.0+ 和 biber 1.0+ 並將其放入序言中:

\DeclareSourcemap{
  \maps[datatype=bibtex]{
    \map[overwrite]{
      \step[fieldsource=url,
            match=\regexp{\A\{(.+)\}\z},
            replace=$1]
    }
  }
}

當然,可以根據您的喜好調整正規表示式。請參閱當前biblatex手冊的第 4.5.2 節。

相關內容