Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何提取r中的子字符串_R_Substring_Text Extraction - Fatal编程技术网

如何提取r中的子字符串

如何提取r中的子字符串,r,substring,text-extraction,R,Substring,Text Extraction,假设我有一个字符串: {"id":"35","value":"0.2"},{"id":"1462","value":"0.2"}, {"id":"1109","value":"0.2"},{"id":"220","value":"0.2"}, {"id":"211","value":"0.1"} 我需要在每个{} 然后在标题中创建一个id和一个id对应的数字的列,如: 35 1462 1109 220 211 ---------- 0.2 0.2 0.2 0.2 0.1 我们可以在粘贴

假设我有一个字符串:

{"id":"35","value":"0.2"},{"id":"1462","value":"0.2"},
{"id":"1109","value":"0.2"},{"id":"220","value":"0.2"},
{"id":"211","value":"0.1"}
我需要在每个
{}

然后在标题中创建一个id和一个id对应的数字的列,如:

35  1462 1109 220 211
----------
0.2  0.2 0.2  0.2 0.1

我们可以在
粘贴
ing
[
]
之后分别在开始和结束处使用
jsonlite

d1 <- jsonlite::fromJSON(paste0('[', str1, ']'))

假设我们有多个字符串,然后将这些字符串折叠为一个字符串,并应用
fromJSON

str2 <- c(str1, str1)
d1 <- jsonlite::fromJSON(paste0("[", paste(str2, collapse=",\n"), "]"))

str2简单,使用JSON解析器,然后迭代JSON内容以生成所需的输出。这不是
sub
或任何其他R regex函数的作业。
s如果您不介意,我还有一个问题。如何将其应用于多个字符串?我正在考虑创建一个循环。还有其他方法吗?@NikitaPronin请查看更新的帖子
str2 <- c(str1, str1)
d1 <- jsonlite::fromJSON(paste0("[", paste(str2, collapse=",\n"), "]"))
str1 <- '{"id":"35","value":"0.2"},{"id":"1462","value":"0.2"},{"id":"1109","value":"0.2"},{"id":"220","value":"0.2"},{"id":"211","value":"0.1"}'