我很难用正则表达式替换相似但不同的表达式。
例如,我有以下文字
\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 {})都必须替换引号
感谢您的帮助。