解析不同长度的字符串

时间:2018-07-03 14:21:23

标签: r

我有一个向量,其中包含有关产品的汇总信息。一个示例为D | @ | W2222 | @G。我需要从该字符串中获取的唯一信息是表示颜色的“ W2222”。我的问题是我不确定如何应用一致的拆分,因为左侧的“ D”也可以从单个字母到完整字符串,并且颜色可以是字母/数字组合或实际单词。我的代码使用strsplit和unlist来区分颜色,但也将每个字符放到自己的行中,因此仍然无法提取颜色。无论颜色的长度或代码如何,我如何都能将其取出?

代码:

Monster  <- MyData$ProductionScheduleDesc
Rockstar <- unlist((strsplit(as.character(Monster),"|"))) %>%
as.data.frame() 

输出:

D

|

@

|

W
2
2
2
2



|

@
G

1 个答案:

答案 0 :(得分:1)

通过添加定界符并将其扩展到

Rockstar <- unlist((strsplit(as.character(Monster)," |@ "))) %>%

,而不是仅使用| |。这使所有没有用空格分隔的字符保持在一起,在这种情况下,这只是我产品的颜色代码。