我一直在尝试使用R语言将带有双引号的空格分隔字符串进行拆分,但是一直没有成功。 这是一个字符串示例:
rainfall snowfall "Channel storage" "Rivulet storage"
这对我们很重要,因为这些是必须与随后的数据匹配的列标题。 这个网站上有其他关于如何解决这个问题的建议,但它们似乎在R中不起作用。 以下是一个例子:
这里是一些我一直在尝试的代码:
str <- 'rainfall snowfall "Channel storage" "Rivulet storage"'
regex <- "[^\\s\"']+|\"([^\"]*)\""
split <- strsplit(str, regex, perl=T)
what I would like is
[1] "rainfall" "snowfall" "Channel storage" "Rivulet storage"
但是我得到的是:
[1] "" " " " " " "
矢量的长度正确(这是令人鼓舞的),但是字符串为空或只包含一个空格。有什么建议吗?
提前致谢!
regmatches
替代mapply
:regmatches(str, gregexpr(regex,str,perl=TRUE))[[1]]
。 - Matthew Plourde