如何去掉引号之间的文字?

How to remove the text between the quotation marks?

这是我的数据:

x <- 'aaaaa,"bbb",ccccc,"dddd",abcd"dddd"'

如何删除:"bbb""dddd""dddd"

所以我可以得到:

"aaaaa","ccccc","abcd"

谢谢!

我们可以使用 gsub 来匹配双引号 (") 后跟一个或多个不是双引号的字符 ([^"]+) 后跟双引号的模式引用 (") 和 ,(如果存在)并替换为空白 ("")

gsub('"[^"]+",?', "", txt)
[1] "aaaaa,ccccc,abcd"

如果我们需要将 , 保持在

之间
gsub('"[^"]+"', "", txt)
[1] "aaaaa,,ccccc,,abcd"

数据

txt <- 'aaaaa,"bbb",ccccc,"dddd",abcd"dddd"'

双引号可以去掉

gsub('"\w+",?', '', x)
#[1] "aaaaa,ccccc,abcd"

如果你想把它们作为词向量 -

strsplit(gsub('"\w+",?', '', x), ',')[[1]]
#[1] "aaaaa" "ccccc" "abcd"