将大括号 {} 替换为引号 "

Substituting braces {} with quotes "

我想用引号替换大括号{}。我试了下面的代码,问题是字符串中的\appaers我删不掉。

使用的代码:

makebib <- function(string){
   # replace { by "
   string <- gsub("\{",'"',string)

   # replace } by "
   string <- gsub("\}",'"',string)

   # delete \
   string <- gsub("\","",string,fixed = TRUE)

   return(string)
}

test <- "bla{bla}"
makebib(test)

[1] "bla\"bla\""

如何管理\不出现或删除它?

您的功能有效。 \ 并不存在。

考虑以下几点:

test <- "bla{bla}"
makebib(test)
# [1] "bla\"bla\""

cat(makebib(test))
# bla"bla"

nchar(makebib(test))
# [1] 8

顺便说一下,你的函数还可以简化一下:

makebib <- function(string) gsub("[{}]", "\"", string)