gpt4 book ai didi

r - 使用 R 包 RefManageR 调整文本引用

转载 作者:行者123 更新时间:2023-12-02 02:57:10 26 4
gpt4 key购买 nike

我正在尝试使用 RRefManageR 管理引用书目,如下所示。

library(RefManageR)
file.name <- system.file("Bib", "RJC.bib", package="RefManageR")
bib <- ReadBib(file.name)

BibOptions(check.entries = FALSE, bib.style = "authoryear", max.names = 1,
style = "citation", bibpunct = c("(",")","(",")",";",","))

Cite(bib, c("jennings2013bayesian", "ritchie2012novel"))
[1] "(Jennings, et al., 2013; Ritchie, et al., 2012)"

如何调整引文中的标点符号以获得以下所需的引文(et al 之前没有逗号)?

[1] "(Jennings et al., 2013; Ritchie et al., 2012)"

bibpunct 参数似乎没有可用的选项。

最佳答案

你可以像这样使用一个简单的正则表达式:

, (?=et al\.)
# match a comma, only when it is followed by et al.

这需要用一个空格代替,参见a demo on regex101.com .


R 中:

ref <- c("(Jennings, et al., 2013; Ritchie, et al., 2012)")
(ref <- gsub(", (?=et al\\.)", " ", ref, perl=TRUE))


这产生

[1] "(Jennings et al., 2013; Ritchie et al., 2012)"

关于r - 使用 R 包 RefManageR 调整文本引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48692020/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com