R 中最后一个下划线后分割字符串

Man*_*nsi 1 regex string split r

我有一个像“ABC_Something_Filename”这样的字符串。如何在 R 中将其拆分为“ABC_Something”和“Filename”?

我不想删除任何东西。我想要这两个组件 - 最后一个下划线之前和之后。

编辑:我尝试使用提到的列分隔,但这对于我的用例来说太广泛了。因此,我找到了一个正则表达式替代品来简单地分割字符串

Tim*_*sen 7

一种选择是使用strsplit负前瞻,断言要分割的下划线是输入中的最后一个:

input <- "ABC_Something_Filename"
parts <- strsplit(input, "_(?!.*_)", perl=TRUE)[[1]]
parts

[1] "ABC_Something" "Filename"
Run Code Online (Sandbox Code Playgroud)