在R中拆分一个字符串,在两个符号中都有拆分字符

时间:2017-01-13 09:04:16

标签: r string

我发现了一个类似的问题here,但它并没有真正回答我的问题。

我有一个这样的字符串:

{a,b,c,d}{e,f,g,h}

我想将此字符串拆分为两个向量:a,b,c,de,f,g,h

我怎么能在R?中做到这一点?

非常感谢,

2 个答案:

答案 0 :(得分:1)

另一种方式:

regmatches(txt, gregexpr("(?<={)[^}]+", txt, perl=TRUE))

请参阅here.

答案 1 :(得分:0)

您需要将字符串拆分两次:

split1 <- setdiff(strsplit("{a,b,c,d}{e,f,g,h}", "[{}]")[[1]], "") # setdiff permits to suppress the 2 empty strings generated
split1
#[1] "a,b,c,d" "e,f,g,h"

strsplit(split1, ",")
#[[1]]
#[1] "a" "b" "c" "d"
#[[2]]
#[1] "e" "f" "g" "h"

在2次分割之后,您将获得所需的矢量列表