將 .bib 檔案中的month=Jan或month=jan字串轉換為整數

將 .bib 檔案中的month=Jan或month=jan字串轉換為整數

馴服野獸建議在密鑰中使用純整數而不是字串month

month我的 .bib 檔案中有混合格式,並且需要一個獨特的解決方案。哪些工具可以將不同的字串(如“jan”和“Jan”(包含在 0 到 2 對 中{})轉換為1

答案1

鑑於這個不是非常有效的 bib 文件

aaa.bib
year= jan
journal="jan of feb of dec"
month="1"
month = "Jan"
month=  "{{jan}}"
month=  {{jan}}
month=  {jan}
month=  "2"
month=  {Jan}
author="Jan de Groote"

以下命令

 sed -e 's/\(^ *month\) *= *["{]{*jan}*[}"]/\1 = "1"/i' aaa.bib

輸出

aaa
year= jan
journal="jan of feb of dec"
month="1"
month = "1"
month = "1"
month = "1"
month = "1"
month=  "2"
month = "1"
author="me"

這看起來是正確的,所以你只需要 11 條以上類似的行就可以了(首先保存文件的副本!!)

答案2

引用ttb:

最好有一個數值或縮寫

引用biblatex手冊:

這必須是整數,而不是序數或字串。

儘管如此,在 JabRef 中,我們還是決定使用縮寫,這並沒有給我們帶來麻煩:

@Article{,
  month = jun,
}

為此,請按Alt+F8或品質 -> 清理條目... 然後,將出現以下對話方塊:

清理條目

如果「執行欄位格式化程式」的內容看起來不同,只需按下「建議用於 BibTeX」。

透過“檔案”->“切換到 biblatex 模式”,可以切換到 biblatex 模式,然後顯示“推薦用於 biblatex”。

清理 biblatex 的預設值

相關內容