我有一个字符串strEx <- "list(A, B, C, D)"
,我想存储为特征向量:的R - 字符串处理和提取
[1] "A" "B" "C" "D"
我不是在正则表达式非常好(可能是矫枉过正为好,但我会将来需要更多)这可能是我的问题的一部分。我有一个解决方案,我觉得是太多的代码/糟糕的形式。
它给了我最终想要的东西,但我仍然需要将它拆分为逗号并将其弄平。我只是觉得这太简单了。任何人都有更漂亮的解决方案?
d <- gsub(".*\\((.*)\\).*", "\\1", strEx)
d1 <- unlist(tstrsplit(d, ", ", type.convert = TRUE, fixed = TRUE))
所以,在现实情况下,你周围有逗号分隔值的一些文字文本? –
尝试'res < - str_match_all(strEx,“(?:list \\(\\ s * |(?!^)\\ G,?\\ s *)([^,)] +)”)'with '库(stringr)'。不过,你的方法已经很好了。 –
@WiktorStribiżew在实际情况下,它可能是文本(A,B,C,D,...,K)文本。总是只有一个()的块,关闭)可能是字符串中的最后一个字符,或者可能不是。 – ErrantBard