使用正则表达式区分\ q {}和\ cite {}的困难

时间:2018-12-13 11:39:04

标签: r regex

我很难用正则表达式替换相似但不同的表达式。

例如,我有以下文字

\q{(ir)rational} and \cite{feldman_cbs_2016}

必须为

"(ir)rational" and [@feldman_cbs_2016]

我正在使用以下r代码

x <- (gsub('\\\\q\\{|\\}','"',"\\q{(ir)rational} and  \\cite{feldman_cbs_2016}",fixed=F))


x <- gsub('\\\\cite\\{','[@',x,fixed=F)

但是会产生

[1] "\"(ir)rational\" and  [@feldman_cbs_2016\""    

第一部分是正确的,但第二部分的末尾不应该用引号代替。基本上,只有在存在\ q {}时才需要替换引号,而不是对于每个大括号(例如\ cite {})都必须替换引号

感谢您的帮助。

0 个答案:

没有答案